OData Web API Query Interceptor

OData-Endpunkt wird mit ASP.NET Web API 2.0 erstellt

Versuchen Sie, einen Query Interceptor im ODataController zu erstellen, wie im folgenden Code gezeigt:

public class AVMItemController : ODataController
{
    ADWAppContext sampleADW = new ADWAppContext("Server=XXX;Database=XXX;User ID=XXX;password=xxx;Trusted_Connection=false;Encrypt=true");

    // GET: odata/AVM
    [EnableQuery(PageSize=25)]
    public IQueryable<ADWAppContext.AVMItem> GetAVMItems()
    {
        return sampleADW.AVMItems.AsQueryable<ADWAppContext.AVMItem>();
    }

    [QueryInterceptor("AVMItems")]
    public Expression<Func<ADWAppContext.AVMItem, bool>> FilterAVMItems()
    {
        return avm => avm.avmId > 1000;
    }
}

Alle OData-Abfragen werden ohne Berücksichtigung des in Query Interceptor genannten Prädikats verarbeitet. Ich habe einen Haltepunkt in der Query Interceptor-Methode, der niemals erreicht wird.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage