2013-05-10 59 views
1

我有一个桌面应用程序的想法,需要一个服务器组件工作。不幸的是,我对网络编程很陌生,所以我并不真正知道一切是如何运作的。将.NET应用程序部署到AppHarbor,不使用ASP

我知道的是我不需要一个网站。我将要制作的服务器不输出任何HTML。它只需要做一些简单的数据库访问,并在这里和那里进行一些检查。

在这种情况下,我假设ASP.NET是一个矫枉过正的问题,而且我还没有用过ASP,所以我想知道是否可以将控制台应用程序推送到AppHarbor。如果可以,我如何管理请求(或者在部署时如何实际向其发送请求)?如果我不能这样做,我愿意使用别的东西(Heroku和Ruby,也许),这将允许我这样做。 我会首先使用Ruby,但同样的问题依然存在。只是RoR而不是ASP.NET。

任何帮助表示赞赏。

回答

0

有一个简单的ASP.NET项目用于托管WCF。在Visual Studio中点击File-> New-> Web Site。

在您的桌面应用程序中添加引用到这个WCF服务(右键单击项目添加服务引用,然后过去的网址,可在运行WCF服务后见)

+0

正如我所说,我真的不明白整个事情是如何工作的。我是否将桌面应用程序部署到?他们是否必须在同一解决方案中进行项目?有什么办法可以将这两者分开吗? – 2013-05-10 13:06:03

+0

另外,有没有办法用Visual C#Express来做这件事?还是我需要Web dev版本? – 2013-05-10 13:07:45

+0

您还需要Web版本。你只能在那里部署一个Web应用程序。您必须将桌面部署到您的客户 – 2013-05-10 13:12:35

0

所以,可以实现与ASP很容易。 WEBApi网络呼叫;然而,如果我不想使用ASP.net做任何事情,我会这样做。

  1. 创建一个Windows WCF服务。这基本上是一种服务,它完全符合您的需求,通过互联网接收请求并将序列化数据发回。你可以找到一个教程Here
  2. 将WCF服务托管在某处。我是Azure的忠实粉丝,但有很多地方可以做到这一点。
  3. 创建您想要从此服务中获取数据的应用程序。要设置自己从该服务中提取数据,请右键单击该项目并选择“添加服务参考”。一旦你这样做了,你就可以使用服务公开的方法,就好像它是你项目中的一个类一样。