1

我知道 WCF 在 .NET 3.0 及更高版本中可用。

但是我想知道是否可以在 ASP.NET 2.0 网站中创建工作 WCF 服务 Service.svc ?

我们在 .NET 2.0 中拥有 ASP.NET 网站是有原因的,它是一个具有大量代码的旧应用程序,建立在第 3 方 .NET 2.0 CMS 系统之上。

现在,我可以毫无问题地将 WCF 服务添加到网站,创建了以下文件: MyWebsite/App_Code/Service1.cs MyWebsite/App_Code/IService1.cs MyWebsite/Service1.svc

一切都编译得很好,我能够添加所有必需的端点并且节点已成功创建。

但是当我导航到服务时:

http://localhost/MyWebsite/Service1.svc

我收到此错误消息:

“/MyWebsite”应用程序中的服务器错误。服务“Service1”的应用程序(非基础设施)端点为零。这可能是因为没有为您的应用程序找到配置文件,或者因为在配置文件中找不到与服务名称匹配的服务元素,或者因为在服务元素中没有定义端点。

错误消息令人困惑,因为我已经定义了所有内容。可能是因为该网站在 IIS 中作为 .NET 2.0 应用程序运行吗?或者是否仍然可以在作为 .NET 2.0 应用程序运行的网站内拥有 WCF 服务?

说明 网站的 IIS 虚拟目录配置为 ASP.NET 2.0 版本。但我们确实安装了 .NET 4.0。

4

2 回答 2

0

您是否在 web.config 中配置了服务?由于您没有安装 .NET 3.0 或 3.5,您也可能缺少正确的机器/全局 Web 配置文件。在这种情况下,为什么不在该机器上安装 .NET 3.5?它应该与 2.0 兼容。

不要混淆 AppPool .NET 版本(因为 .NET 20、3.0 和 3.5 是 2.0,它是指基类库版本)和使用的 .NET 框架版本。

另一种解决方案只是在 web.config 中配置 WCF。你在里面有什么改变吗?

于 2013-05-30T20:51:38.627 回答
0

对于它的价值,请参阅此要求页面:http: //msdn.microsoft.com/en-us/library/ms733890.aspx

如果您查看“其他版本”,它只会回到 3.0... 可能还有其他链接可以提供帮助。

于 2013-05-30T20:56:33.083 回答