2012-11-08 11 views
6

tôi đã thay đổisự thay đổi trong config.DataServiceBehavior.MaxProtocolVersion từ V3.0 đến V2.0 không thể trở lại

config.DataServiceBehavior.MaxProtocolVersion = DataServiceProtocolVersion.V3 

từ V3 để V2 để xác minh rằng JSON ra là Verbose. Tuy nhiên, khi tôi đổi lại thành V3, đầu ra vẫn dài dòng và tôi phải thêm

?$format=application/json;odata=verbose 

để nhận JSON Light. Lời khuyên về làm thế nào để làm cho nó trở lại phiên bản chính xác?

+1

Nếu bạn đặt MaxProtocolVersion để V3, sau đó application/json nên trả lại cho bạn ánh sáng json và application/json; OData = verbose nên quay lại định dạng json cũ . Đảm bảo bạn xây dựng lại và khởi động lại dịch vụ sau khi thay đổi cấu hình. – Pratik

Trả lời

0

Để giải quyết sử dụng vấn đề này có thể phạm vi một lớp học phần

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(); 
    } 
} 
}