我正在尝试使用 Dapper 进行数据访问(在 ASP.NET MVC3 FWIW 中)。我有一个 T-SQL 视图(在 SQL Server 中),它是这样的:
SELECT s.*, c.CompanyId AS BreakPoint c.Name AS CompanyName
FROM tblStaff AS s
INNER JOIN tblCompanies AS c ON c.CompanyId = s.CompanyId
非常简单。本质上是一个员工列表,每个员工都有一个公司。
我遇到的问题是我正在尝试将此查询的输出映射到我的 POCO,但是因为视图中的每个字段都必须是唯一的(即 CompanyName 而不是 tblStaff 中已经存在的 Name)映射到 POCO不工作。
这是代码:
var sql = @"select * from qryStaff";
var people = _db.Query<Person, Company, Person>(sql, (person, company) => {person.Company = company; return person;}, splitOn: "BreakPoint");
有什么建议我可以如何解决这个难题?我愿意改变我的观点,因为现在我对如何进步感到困惑。