0
我正在試圖用Dapper(和失敗)做以下事情。我如何獲得多映射在Dapper中工作?
我的波蘇斯(簡化所有代碼)是:
public class Company
{
public int CompanyId { get; private set; }
public string CompanyName { get; private set; }
public Person CompanyAddress { get; private set; }
public Person Administrator { get; private set; }
}
public class Person
{
public int PersonId { get; private set; }
public string FirstName { get; private set; }
public string LastName { get; private set; }
}
在公司表有一個公司地址FK它映射,將personId PK Person表中的數據庫和管理員。基於this和this我認爲follwoing是我要如何做到這一點:
public static Company Select(IDbConnection connection, int id)
{
Trap.trap();
return connection.Query<Company, Person, Person, Company>("select * from Company left join Person address on Company.CompanyAddress = address.PersonId left join Person admin on Company.Administrator = admin.PersonId where Company.CompanyId = @Id",
(cmpy, addr, admin) => new { PersonId = id }).FirstOrDefault();
}
但是,這給了我一個編譯錯誤的「新{PERSONID = ID}」。我錯了什麼?
這給出了@Id需要定義的錯誤。我放棄了Dapper,我花了更多的時間試圖讓這個工作,而不是僅僅處理選擇自己。並用盡你的時間 - 對不起。 – 2014-09-19 14:57:03