LinqToDB可以将Enum属性的值存储为Enum的字符串值而不是整数值吗?
public enum OrderType
{
New,
Cancel
}
[Table("Orders")]
public class Order
{
[PrimaryKey, Identity]
public int OrderId { get; set; }
[Column]
public OrderType Type { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
如何让LinqToDB将"新建"或"取消"存储到数据库而不是0或1?
更新:似乎LinqToDB的答案是在枚举上设置MapValue属性.我一直试图找到在数据对象上指定它的位置.
public enum OrderType
{
[LinqToDB.Mapping.MapValue(Value = "NEW")]
New,
[LinqToDB.Mapping.MapValue(Value = "CANCEL")]
Cancel
}
Run Code Online (Sandbox Code Playgroud)
这将在枚举中将指定值存储为数据库中的文本.