c# - Windows 上的应用程序服务器等效项

标签 c# .net

我有一个关于如何编写 Windows 服务器端应用程序的问题。

我们现在有一个系统,其客户端基于 .NET 4.0,服务器端应用程序在 Linux 上的 jboss 上运行。服务器应用程序与 Oracle 数据库对话。

我现在正在考虑将服务器端移至 Windows,并将数据库移至 SQL Server。服务器应用程序也应该在 .NET 上用 C# 编写。但是,在 Windows 上似乎没有 Application Server 等效项。在 Windows 上通常如何编写和部署服务器应用程序?

非常感谢

最佳答案

有几个选项,但最基本的是

  1. 在 IIS 中托管 WCF Web 服务并利用 IIS 提供的管理功能,您可以带来 AppFabric更强大、更易于管理的托管。

  2. 在 Windows 服务中自行托管您的服务。

如果它适合您的应用程序,我会说 AppFabric解决方案值得一看。但这不是与 Java 应用程序服务器的一对一。


更新

自托管 WCF 就这么简单

host = new ServiceHost(typeof(YourWcfService));
host.Open();

这假设您已经定义了一个名为 YourWcfService' 的服务。 Windows 服务的 OnStart` 中的上述代码将开始接受对您的服务的请求。当然这还是需要app.config文件中的所有基本配置。

AppFabric 为您提供了一个很好的环境来管理和监控您的服务,因此听起来不像是破记录,但我会调查它是否适合您。


更新 2:

我快速浏览了一下 bing 并找到了这篇 MSDN 帖子,它很旧但看起来是一个很好的例子。 http://msdn.microsoft.com/en-us/library/bb332338.aspx

关于c# - Windows 上的应用程序服务器等效项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6846494/

相关文章:

c# - Windows 服务能否正常关闭需要数小时?

c# - 无法从单独的程序集访问文件?

c# - 无法使用 PCLStorage 或 Xamarin Forms Labs 在 Android 文件系统中创建文件夹/文件

c# - 双时态设置中的 PostgreSQL 排除约束?

c# - 使用基于属性的路由进行单元测试

.net - 如何从 C# 或 vb.net 读取 Excel 下拉列表或复选框的值?

c# - 如何防止调试器在暂停时调用某些源代码?

c# - 将程序集加载到当前域的正确方法

c# - 我可以创建一个包装器来拦截对实现特定接口(interface)的对象的所有调用吗?

.net - 领域驱动设计、领域对象、对 Setter 的态度