我想通过 Asp.net core -EF- 构建一个动态报告,即从用户那里接收列名,然后根据这些输入创建 SQL 查询,我编写了这段代码。但它是返回列名列表,而不是返回这些列中的数据列表。
public async Task<Collection_Response<string>> GetReportDataAsync(int Report_Type, List<string> columns, DateTime Start_Date, DateTime End_Date, string Lang)
{
Collection_Response<string> result = new Collection_Response<string>()
{
Is_Success = false,
Messages = new List<Message_Item>()
};
try
{
var report_Query = (from p in db.Children
join e in db.Centers
on p.Center_ID equals e.Center_ID
where p.Joining_Date >= Start_Date && p.Joining_Date <= End_Date
select ($"new {string.Join(", ", columns)} ")).ToList();
result.Data = report_Query;
result.Is_Success = true;
}
catch (Exception ex)
{
result.Messages.Add(new Message_Item() { Message = err.Handle_Exception(ex) });
}
return result;
}
我应该写什么来返回用户所选列的数据并显示为报告?