2013-10-04 105 views
0

當對象是另一個對象的屬性時,dapperexstension映射是否可以將對象映射到值(id)?這是一個例子。Dapperextension映射功能

public class Contact 
{ 
    public int Id { get; set; } 
    public string Name { get; set; } 
    public Address Address { get; set; } 
} 

public class Address 
{ 
    public int Id { get; set; } 
    public string Street { get; set; } 
} 

在數據庫中的聯繫表都會有這樣的3列

  • 編號
  • 名稱
  • AddressId

所以當我保存與連接的接觸.Insert <>功能我要Address將轉換爲Address.Id並映射到Contact表中的AddressId列。

我知道我可以在我的Contact類中添加一個AddressId屬性,然後它將被保存。但後來我污染了我的聯繫人類,只讓Dapper使用它。也有辦法不使用連接。插入方法,而是編寫一個Sql插入語句並將其用於連接中。查詢。但是,我必須記得在更改Contact類後立即更改SQL語句。

所以我正在尋找這樣的東西。

Map(m => m.Address).Columns("AddressId").UseValue(m.Id); 

回答

0

DapperExtensions是一個簡單的orm覆蓋。我們目前沒有任何計劃來支持聚合對象。