0
通用對象我有一個問題,以通用對象複製到通用對象通用對象與Automapper
public class Customer
{
public int CustomerId { get; set; }
public virtual ICollection<Quote> Quotes { get; set; }
}
我用這個通用類,複製對象對象:
public static class GenericAutomapper
{
public static void PropertyMap<T, U>(T source, U destination)
where T : class, new()
where U : class, new()
{
Mapper.CreateMap(typeof(T), typeof(U));
Mapper.Map<T, U>(source); //crash here
}
}
當我得到一個客戶(使用EF 6.1.2)並且使用這個方法,我在「crash here」這一行發生錯誤。行情收集的樣子: 「((System.Data.Entity.DynamicProxies.Customer_AC635AD71AC95634EF9694FDC434135B488FD116F3C2B6A287846A7886521F3F)源).Quotes」
我沒有任何問題,當我有這樣的:.Include(x => x.Quotes)
我的查詢中,正常的集合被加載。
有沒有辦法管理「未加載」集合?
感謝,
這個班級必須保持通用,當然沒有關於班級的具體內容。 – 2014-12-02 08:29:02
映射類將保持特定的,但問題是,你試圖映射動態代理類,這不是一個好主意。你需要執行這個查詢(它不會是通用的,因爲我期望你將在特定的DBSet上工作),然後調用AutoMapper映射函數。這會給你具體的類型,並允許地圖起作用。這是提供有限信息的最佳猜測。 – WestDiscGolf 2014-12-02 08:47:13