美好的一天!
我正在使用许多使用RIA服务的项目开发Silverlight解决方案。每个silverlight项目都有Silverlight + Own Ria Services项目。我想只制作一个RIA服务项目,所有silverlight项目都会消耗它。
问题是,当我将“WCF RIA服务链接”设置为新的RIA服务时,Silverlight项目工作正常,我的ViewModel类工作正常,但是,当我运行时,应用程序给我错误: “查询'GetList'的加载操作失败。远程服务器返回错误:NotFound。”
当我在浏览http://localhost/Project-Web-Services-Patrimonio-ClassService.svc上测试时运行正常。
我该怎么做才能让它好起来?
[]的 TiagoSchäffer
答案 0 :(得分:0)
我认为您会发现自己错过了网络应用中的RIA服务网站配置设置。
取自我的回答here。关键注释以粗体显示。
使用RIA服务项目选项来创建服务库。这创建了两个绑定在一起的项目(代理对象的代码gen)。两者都只是libs(1 Silverlight和1 .Net)
将任何RIA服务客户端库链接到Silverlight应用程序。然后将.web RIA项目链接到您的托管Web应用程序(用于标准的RIA使用)。您还可以将.web库作为.Net lib添加到Wcf服务中(不将其作为服务使用)。
如果您没有将主Silverlight项目创建为RIA服务项目,则需要将app.config文件中的设置移动到web.config文件中。如果您已经拥有服务支持设置您只需要复制数据库连接字符串。 Wcf项目只需要db连接字符串。
然后您应该能够使用服务器端RIA调用(不要忘记添加您自己的submitchanges调用,因为RIA在每批更新后在幕后执行此操作),或者只使用数据层(EF等)直接。