我想使用automapper展平/展開某些類,但不確定這是否可行。我有一個ListDefo和ValueDefo,這是如何定義列表和值。然後用戶可以將它們添加到數據對象。我並不擔心將ValueDefo ID存儲在DataValue中,因爲我只需要字符串值。下面是類使用AutoMapper將實體到模型的展平/未展開數據
public class ListDefo {
public long Id { get; set; }
public virtual ICollection<ValueDefo> Values { get; set; }
}
public class ValueDefo {
public long Id { get; set; }
public string Value { get; set; }
}
public class Data {
public long Id { get; set; }
public ICollection<DataValue> Values { get; set; }
}
public class DataValue {
public long Id { get; set; }
public virtual ListDefo ListDefo { get; set; }
public string Value { get; set; }
}
目前如果我使用automapper,我將有以下型號,我得到一個數值屬性的數據對象,並與每個DataValue有一個ID,ListDefoId和價值。
public class DataModel {
public long Id { get; set; }
public ICollection<DataValueModel> Values { get; set; }
}
public class DataValueModel {
public long Id { get; set; }
public long ListId { get; set; }
public string Value{ get; set; }
}
這是好的我想,但我認爲這將是清潔的,相反,如果一個數據對象有一個列表的列表,然後每個列表只具有價值。所以它看起來像這樣
public class DataModel {
public long Id { get; set; }
public ICollection<DataListModel> Lists { get; set; }
}
public class DataListModel {
public long Id { get; set; }
public string Name { get; set; }
public ICollection<DataValueModel> Values { get; set; }
}
public class DataValueModel {
public long Id { get; set; }
public string Value{ get; set; }
}
這是否可以使用automapper?我想再次做它
我可以很容易地做到這一點,如果我改變我的實體來存儲像模型這樣的數據,但是將列表記錄鏈接到數據記錄和值記錄