8 Stimmen

Queryable-Attribut ist nicht in mvc 4 Web-Api kompilieren, wenn Sie versuchen, für odata markieren

Ich bin mit MVC 4 Web-Api, die mit Visual Studio 2012 kommt.

Wie ich verstanden habe, werden Odata nicht automatisch geparst, aber wir müssen jetzt das Attribut [Queryable] zur Aktion hinzufügen.

Also habe ich es hinzugefügt:

public class TestController : ApiController
{
    [Queryable]
    public IQueryable<MyClass> GetMyClasses()
    {
       return ...;
    }
}

aber ich erhalte einen Kompilierungsfehler:

The type or namespace name 'Queryable' could not be found (are you missing a using directive or an assembly reference?) 

Wird odata noch unterstützt? und warum wird Queryable nicht als Attribut erkannt, wie hier aufgeführt.

Dankeschön

15voto

Darin Dimitrov Punkte 990883

Wie erklärt aquí wurde die OData-Unterstützung in eine separate NuGet-Paket .

12voto

Simon_Weaver Punkte 129442

Sie ist in dieser Assembly (DLL) enthalten:

 System.Web.Http.OData.dll

Dieser Namensraum :

System.Web.Http.QueryableAttribute

In diesem Nuget-Paket :

Install-Package Microsoft.AspNet.WebApi.OData

Als ich das Paket installierte, wurde es jedoch nicht als gültiger Typ angezeigt. Ich habe sogar überprüft, dass System.Web.Http.OData.dll vorhanden war, und im Object Explorer konnte ich es nicht finden. Schließlich habe ich Visual Studio neu gestartet und alles war in Ordnung. Ich vermute, dass eine ältere Version dieser DLL sie verwirrt haben könnte oder so etwas.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X