के लिए एएसपी.NET वेबएपी ओडाटा समर्थन मेरे पास प्रोजेक्ट इकाई और प्रोजेक्ट डीटीओ है। मैं एक वेबएपीआई नियंत्रक विधि बनाने की कोशिश कर रहा हूं जो प्रोजेक्ट डीटीओ को ले और वापस कर सकता है और इसे ओडाटा का समर्थन कर सकता है।डीएसओ
समस्या यह है कि मैं ओआरएम का उपयोग कर रहा हूं जो परियोजना इकाई का उपयोग कर डेटाबेस से क्वेरी कर सकता है प्रोजेक्ट डीटीओ नहीं। क्या कोई तरीका है कि मैं प्रोजेक्ट इकाई क्वेरी पर प्रोजेक्ट डीटीओ के आधार पर ओडाटा से फ़िल्टरिंग/सॉर्टिंग/पेजिंग लागू कर सकता हूं?
public object GetProjects(ODataQueryOptions<Project> query)
{
var context = new ORM_Context();
var projects = query.ApplyTo(context.Projects);
var projectDTOs = projects.Select(
x =>
new ProjectDTO
{
Id = x.Id,
Name = x.Name
});
return new
{
TotalCount = Request.GetInlineCount(), //before paging
Results = projectDTOs.ToList()
};
}
जाहिर है यहां सबसे महत्वपूर्ण बात यह सही पारित करने के लिए है:
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;
}
आपने क्या किया? – mayu