我目前有一个silverlight应用程序,它有silverlight类库。 silverlight类库有一个WCF服务引用,可以按照预期的方式处理小数据。
但是我们遇到了一个由maxItemsInObjectGraph的默认值引起的问题。我们已经用增加的值测试了它(从行为中的vb app设置调用)并且它可以工作但是我们不确定如何在silverlight类库中设置maxItemsInObjectGraph的值(因为它仅在clientconfig文件中定义并且没有服务添加到客户端)。
我已经看过有关将其添加到web.config的帖子,但这似乎只适用于应用程序直接调用该服务而不是类库?
有什么想法吗?
干杯
答案 0 :(得分:0)
您可以自动设置maxItemsInObjectGraph:
ChannelFactory<IMyService> factory = new ChannelFactory<IMyService>(binding, endpoint);
foreach (var operation in channelFactory.Endpoint.Contract.Operations)
{
var behavior = operation.Behaviors.Find() as DataContractSerializerOperationBehavior;
if ( behavior != null )
{
behavior.MaxItemsInObjectGraph = 2147483647;
}
}