Consultas y tipos de OData distintos de IQueryable en ASP.NET Web API
Estoy creando una aplicación de API web ASP.NET que devuelve un Atom o una fuente RSS. Para ello, construye unSystem.ServiceModel.Syndication.SyndicationFeed
y una costumbreMediaTypeFormatter
es responsable de manejar el encabezado de aceptación HTTP, convirtiendo elSyndicationFeed
a cualquieraAtom10FeedFormatter
o unRss20FeedFormatter
, y transmitir el resultado a la secuencia de respuesta. Hasta ahora tan bueno.
Mi controlador se ve algo como esto:
public class FeedController : ApiController { public HttpResponseMessage Get() { FeedRepository feedRepository = new FeedRepository(); HttpResponseMessage<SyndicationFeed> successResponseMessage = new HttpResponseMessage<SyndicationFeed>(feedRepository.GetSyndicationFeed()); return successResponseMessage; } }
Lo que me gustaría hacer es hacer uso de la consulta OData incorporada para filtrar mi fuente, pero cambiando el tipo de retorno deGet()
método paraIQueryable<SyndicationFeed>
obviamente no funcionará ya que unaSyndicationFeed
no implementaIQueryable
.
¿Hay alguna manera de utilizar la consulta OData incorporada en elIEnumerable<SyndicationItem>
propiedad en elSyndicationFeed
?