我想要表的显示数据。而且我无法显示字段-id来表示它们所引用的表的值。
我添加新项目 - Reportint->报告(* .rdcl)并在网络表单上添加ReportViewer。 VS dispayed向导,我添加新的DataSet,选择我的业务方法选择数据。
我有表Inhabitans它包含FacultyID字段,但我希望从链接表中看到Value,其中Inhabitans.FacultyID == Faculty.FacultyID。
public List<Inhabitant> SelectAllWithoutParameters()
{
using (DataContext dc = Infrastructure.DataContext)
{
DataLoadOptions options = new DataLoadOptions();
options.LoadWith<Inhabitant>(u => u.Faculty);
dc.LoadOptions = options;
List<Inhabitant> inhs = dc.GetTable<Inhabitant>().OrderBy(u => u.FullName).ToList();
return inhs;
}
}
单击“插入 - 新表”。我可以选择Inhabitant的所有字段,但不能选择Faculty。
如何解决这个问题
答案 0 :(得分:4)
我对rdcl报告一无所知,但我会创建一个新类来将数据投影到,比如InhabitantReport。
然后你只需改变这一行:
List<Inhabitant> inhs = dc.GetTable<Inhabitant>().OrderBy(u => u.FullName).ToList();
这样的事情:
List<InhabitantReport> inhs = dc.GetTable<Inhabitant>().OrderBy(u => u.FullName).Select(r=>new InhabitantReport()
{
//Populate data.
}).ToList();