【发布时间】:2012-01-27 23:34:08
【问题描述】:
我需要构建一个可以双向通信的网站和应用程序。我将使用 ASP.NET 构建网站,并使用 C# 构建应用程序。
我将自己托管网站,它将与应用程序在同一台机器上运行。
我不知道在两者之间发送数据的最佳技术是什么。 C# 应用程序需要一直运行。我应该构建一个 C# 控制台应用程序,然后隐藏控制台窗口吗?还是其他类型的应用更合适?
我一直在浏览网络,发现了几个不同的建议,包括套接字、消息队列、远程处理和 WCF。一些指针将不胜感激 - 我对所有这些都是新手。
谢谢。
EDIT 将使用请求-响应模式,Web 应用程序始终是实例化请求的方式。这就是我所说的双向通信。
Web 应用会向后端应用发送请求,后端应用会执行一些处理,然后将响应发送回 Web 应用。 JSON 将用于来回发送数据。
我将使用 SQL Server Express 2008 R2,后端应用程序将是唯一与数据库通信的应用程序。 Web 应用程序将主要关注表示层。
后端应用程序将具有内存中的对象,这些对象在应用程序启动时被实例化(使用从数据库加载的数据),然后持久保存到数据库中(在执行期间和关闭之前)。 C# 控制台应用程序是否适合这类事情?
【问题讨论】:
-
你会使用什么样的数据源?以 MSSQL 为例?
-
@Rachel - 他们会有什么样的沟通方式?如果是简单的数据通信,那么您的 Windows 应用程序可以将其放在 DB 中,然后 Web 应用程序调用从 DB 中提取它,否则请使用 WCF。
-
@Trikks 是的,我将使用 SQL Server 2008 R2。我的想法是只有 C# 应用程序与 DB 通信,这样 Web 应用程序将主要关注表示层。我可能会使用 JSON 在这两个应用程序之间发送数据。
-
@Bibhu Web 应用程序将向应用程序发送请求。应用程序将执行一些处理,然后将响应发送回 Web 应用程序。
-
@Rachel 你想要保持连接吗?或者是否会有触发器来启动连接?
标签: c# asp.net wcf sockets remoting