我已将域服务类添加到SL4 / EF / RIA Services应用程序的服务器端项目中。我已经设法在web.config部分创建了所需的所有必要元素。 (顺便说一句,为什么我在创建域服务类时没有为我生成这个?)
我现在缺少的是我的端点元素的contract属性:
<service behaviorConfiguration="XXX.Web.RIAServices.MyServiceBehavior" name="XXX.Web.RIAServices.MyService">
<endpoint address="http://localhost:6400/ClientBin/XXX-Web-RIAServices-MyService.svc" binding="basicHttpBinding" bindingConfiguration="LargeData" contract="???">
<identity>
</identity>
</endpoint>
</service>
我认为它应该类似XXX.Web.RIAServices.IMyService
,但我生成的代码中不存在该接口。
我在合约属性中添加了什么?
答案 0 :(得分:4)
对于那些可以使用它作为一种方式来配置其DomainService并使用其他设置的人,以下是如何增加ObjectGraph以允许WCF RIA服务在操作期间编组多于默认的#对象:< / p>
<system.serviceModel>
<serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true" />
<services>
<service name="ProjectName.Web.Services.YourDomainService" behaviorConfiguration="ProjectName-Web-Services-YourDomainService"></service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="ProjectName-Web-Services-YourDomainService">
<serviceMetadata httpGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="true" />
<!-- Increase ObjectGraph for larger results -->
<dataContractSerializer maxItemsInObjectGraph="655360" />
</behavior>
</serviceBehaviors>
</behaviors>
</system.serviceModel>
</configuration>
答案 1 :(得分:0)
我认为合同应该是DomainService
扩展的类。
答案 2 :(得分:0)
我通过完全删除端点元素解决了这个问题。所以它变成了:
<service behaviorConfiguration="XXX.Web.RIAServices.MyServiceBehavior" name="XXX.Web.RIAServices.MyService">
基本上我只需要让enpoint在运行时动态生成。