2016-11-01 6 views
0

odata 버전 7 (최신)으로 업그레이드 한 후 config.EnableCaseInsensitive가 더 이상 작동하지 않습니다. -1과 같은 몇 가지 해결 방법을 시도했습니다. ODataUriResolver 싱글 에 CaseInsensitiveResolver 사양 클래스가odata 버전 7.0에서 대소 문자를 구별하지 않게하는 방법

하지만 불행하게도 아무것도 을 일하지 필터 나는,이 경우 표준에 따라 민감 할 필요가 이해를 다시 작성하는 ODataUriHelper 클래스를 걸러 추가 있지만 작업 솔루션이 있습니다 대소 문자 구별없이 odata 버전 7을 작동합니까?

감사합니다. 우리는이 구성을 설정하는 DI를 사용하는 지금

답변

0

, 당신은이 같은 작업을 수행 할 수 있습니다

configuration.MapODataServiceRoute("odata", "odata", 
     builder => 
      builder.AddService(ServiceLifetime.Singleton, sp => edmModel) 
       .AddService<IEnumerable<IODataRoutingConvention>> (ServiceLifetime.Singleton, sp => 
         ODataRoutingConventions.CreateDefaultWithAttributeRouting("odata", configuration)) 
       .AddService<ODataUriResolver>(ServiceLifetime.Singleton, sp => new CaseInsensitiveResolver())); 

public class CaseInsensitiveResolver : ODataUriResolver 
{ 
    private bool _enableCaseInsensitive; 

    public override bool EnableCaseInsensitive 
    { 
    get { return true; } 
    set { _enableCaseInsensitive = value; } 
    } 
}