Silverlight 4 WCF Ria服务404错误

时间:2013-01-01 18:10:22

标签: silverlight-4.0 wcf-ria-services

我的Silverlight 4 WCF RIA服务项目在我的开发机器上运行良好,VS 2010也是从IIS发布的。但是当我将它部署到客户端机器(windows7)时,我的所有服务方法都返回NotFound错误。我整天都在尝试所有的博客文章和论坛,但都是徒劳的。来自fiddler的服务URL在开发机器上返回,但在客户端PC上返回404。我现在很沮丧。在我的上一次试验中,我看到了手动创建物理.svc文件

<%@ ServiceHost Service="Fully.Qualified.NameOfYourService" Factory="System.ServiceModel.DomainServices.Hosting.DomainServiceHostFactory" %>

但无法弄清楚如何实施,有人请保存我的未来吗?

2 个答案:

答案 0 :(得分:4)

  1. 安装.NET framework 4.0;
  2. 安装IIS7并在“Windows功能”中启用“Windows Communication Foundation HTTP激活”;
  3. 使用选项“SERVER = true”安装WCF RIA服务(您也可以跳过存储在Web应用程序的bin文件夹中的System.ServiceModel.DomainServices。* dll的此步骤设置“Copy Local = True”); msiexec / i RIAServices.msi SERVER = true
  4. 使用“IIS管理器”中的“添加应用程序”菜单指定应用程序名称,包含应用程序的部署目录和“ASP.NET v4.0”作为应用程序池; 如果你收到“404错误”,从“C:\ Windows \ Microsoft.NET \ Framework \ v4.0.30319”目录运行“aspnet_regiis.exe -i”也很有用;

答案 1 :(得分:1)

简单,创建一个新的网站[托管您的应用程序],然后从框架文件夹[Framework for 32bit或Framework64 for 64bit应用程序]运行“aspnet_regiis -i”。

当查看新网站下的HTTP处理程序部分时,您将看到已创建.svc文件的各种映射[回顾默认网站,这些尚未升级!]。然后解决了404错误,Fiddler也确认正确访问了svc文件。

作为最后一个配置,请确保将应用程序池设置为ASP.NET 4集成模式池并启用允许32位应用程序。

希望这会有所帮助: - )