RIA服务应用的部署不能与Web部署项目一起工作



我正在尝试部署一个RIA服务1.0SP1项目,该项目已与Visual Studio 2010 Web部署项目预编译。当我使用Visual Studio将应用程序部署到IIS时,应用程序运行良好。然而,当我使用web部署项目预编译应用程序时,对同一系统上的RIA服务服务的第一次调用失败了。会产生类似的错误:

Load operation failed for query 'Login'.  The remote server returned an error: NotFound.

根据这个问题,"NotFound"错误似乎经常发生在RIA服务应用程序中。使用Fiddler,我发现这个错误在服务器上是一个真正的Not Found错误,因为无法找到服务。我还尝试直接引用服务的URL,但失败了。

搜索web,这篇文章的评论指出web部署项目和RIA服务存在已知问题,这篇文章指出RIA服务用于将传入请求映射到适当的域服务的虚拟路径提供程序存在问题。

我的问题是,是否有可能让RIA服务Web应用程序与Web部署项目一起工作?是否需要进行配置更改才能使其工作?其中一个参考站点提到手动创建.svc文件,这是解决问题的正确方法吗?

这是我能找到的。RIA不支持在Web站点项目中进行部署。这是一个有意的决定,在工具中很明显(您不能将RIA添加到要链接到Web站点的新SL应用程序中)。我最好的猜测是预编译部署选项会干扰RIA的虚拟路径提供程序的执行。

我找不到任何可以证实VPP不会运行的东西,但以下是使我得出结论的来源。

1) From http://msdn.microsoft.com/en-us/magazine/cc163675.aspx

"注意,部署目录中的.aspx文件只是没有内容的标记文件。它们留在那里是为了确保在IIS应用程序中设置了.aspx扩展名的"检查文件存在"选项的情况下,具有端点名称的文件存在。"

2) From http://forums.silverlight.net/forums/t/218547.aspx#531318

"当你使用web部署项目构建和部署你的RIA服务网站时,你必须在"ClientBin"下复制一个带有.svc扩展名文件的虚拟页面,或者创建一个文件夹"services"并将文件粘贴在那里。"

3) From http://forums.silverlight.net/forums/p/186739/428256.aspx#428488

"如果[已发布]网站项目不工作,进入文件夹,删除PrecompliedApp.config"

最新更新