Silverlight maxItemsInObjectGraph行为

时间:2011-01-27 13:33:09

标签: vb.net wcf silverlight ria

我目前有一个silverlight应用程序,它有silverlight类库。 silverlight类库有一个WCF服务引用,可以按照预期的方式处理小数据。

但是我们遇到了一个由maxItemsInObjectGraph的默认值引起的问题。我们已经用增加的值测试了它(从行为中的vb app设置调用)并且它可以工作但是我们不确定如何在silverlight类库中设置maxItemsInObjectGraph的值(因为它仅在clientconfig文件中定义并且没有服务添加到客户端)。

我已经看过有关将其添加到web.config的帖子,但这似乎只适用于应用程序直接调用该服务而不是类库?

有什么想法吗?

干杯

1 个答案:

答案 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;    
    }
}