【问题标题】:change in config.DataServiceBehavior.MaxProtocolVersion from V3.0 to V2.0 cannot revertconfig.DataServiceBehavior.MaxProtocolVersion 从 V3.0 到 V2.0 的更改无法恢复
【发布时间】:2012-11-08 16:58:19
【问题描述】:

我变了

config.DataServiceBehavior.MaxProtocolVersion = DataServiceProtocolVersion.V3

从 V3 到 V2 以验证 JSON 输出是否为 Verbose。但是,当我将它改回V3时,输出仍然很冗长,我必须添加

?$format=application/json;odata=verbose

为了得到 JSON Light。有关如何将其恢复到正确版本的提示?

【问题讨论】:

  • 如果您将 MaxProtocolVersion 设置为 V3,那么 application/json 应该返回 json light 并且 application/json;odata=verbose 应该返回旧的 json 格式。确保在更改配置后重建并重新启动服务。

标签: c# asp.net visual-studio-2012 wcf-data-services


【解决方案1】:

要解决此问题,请使用可以扩展部分类

namespace Project.ServiceReference
{
public partial class MyEntities : global::System.Data.Services.Client.DataServiceContext
{
    public TestDirectoryEntities(string uri)
        : base(new Uri(uri), DataServiceProtocolVersion.V3)
    {
        this.ResolveName = new global::System.Func<global::System.Type, string>   (this.ResolveNameFromType);
        this.ResolveType = new global::System.Func<string, global::System.Type>(this.ResolveTypeFromName);
        this.OnContextCreated();
    }
}
}

【讨论】:

    猜你喜欢
    • 2013-09-23
    • 2013-12-28
    • 2014-11-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-03
    • 2021-02-06
    • 2020-02-25
    相关资源
    最近更新 更多