Wie zu verwenden ODataQueryOptions mit $erweitern
Ich habe mit dem folgenden code zu injizieren "Odata" Stil-Parameter in einer Abfrage. Dies funktioniert gut, bis ich versuche mit $erweitern, und ich bekomme ein casting-Fehler
Unable to cast object of type 'System.Daten.Entität.Infrastruktur.DbQuery1[System.Web.Http.OData.Query.Expressions.SelectExpandBinder+SelectAllAndExpand
1[STOS.Repository.Personen.Item]]' Typ 'System.Sammlungen.Generisches.IEnumerable`1[STOS.Repository.Personen.Item]'.
public static List<T> ApplyTo<T>(HttpRequestMessage request, IQueryable<T> query)
{
var context = new ODataQueryContext(TheEdmModel(), typeof(T));
var newOptions = new ODataQueryOptions<T>(context, request);
return ((IEnumerable<T>)newOptions.ApplyTo(query)).ToList();
}
Ich verstehe, dass wenn $erweitern verwendet wird, wird ein anderes wrapper-Klasse zurückgegeben wird, aber wie wandle ich diese in eine Liste?
InformationsquelleAutor Salguod | 2014-04-20
Du musst angemeldet sein, um einen Kommentar abzugeben.
Bitte Folgen Sie diesem Beispiel https://aspnet.codeplex.com/SourceControl/latest#Samples/WebApi/OData/v3/ODataQueryableSample/ :
public class OrderController : ApiController
Dieser Artikel half mir lösen meine problem bei der Verwendung von $expand stackoverflow.com/questions/18879779/...
InformationsquelleAutor Tan Jinfu