Ich habe Project-Entität und ProjectDTO. Ich versuche, eine WebAPI-Controller-Methode zu erstellen, die ProjectDTOs übernehmen und zurückgeben und OData unterstützen kann.ASP.NET WebApi OData-Unterstützung für DTOs
Das Problem ist, dass ich ORM verwenden, die die Datenbank mit Projekt-Entität nicht Projekt DTO abfragen können. Gibt es eine Möglichkeit, Filterung/Sortierung/Paging von OData basierend auf ProjectDTO auf die Abfrage der Projekteinheit anzuwenden?
public ODataQueryResult<ProjectDTO> GetProjects(ODataQueryOptions<ProjectDTO> query)
{
var context = new ORM_Context();
var projects = context.Projects; // IQueryable<Project>
var projectDtos = query.ApplyTo(projectDTOs)); // <-- I want to achieve something similar here
var projectDTOs =
projects.Select(
x =>
new ProjectDTO
{
Id = x.Id,
Name = x.Name
});
var projectsQueriedList = projectDtos.ToList();
var result = new ODataQueryResult<ProjectDTO>(projectsQueriedList, totalCount);
return result;
}
Was haben Sie am Ende gemacht? – mayu