我有这样的映射。
public class MyObjectMap : ClassMap<MyObject> {
public MyObjectMap()
{
Component(_ => _.MyItem, key =>
{
key.Map(x => x.MyItemValue).Column("COL");
/** I want to set this value to a particular enum in this mapper **/
key.Map(x => x.MyItemType).AssignSomeValue(MyEnum.MyValueType)
});
}
}
如何将值设置为某个特定项目类型。它是特定类型的组成部分。
答案 0 :(得分:0)
IUserType可以做到这一点
class ConstantValueUserType : IUserType
{
NullSafeGet(IDataReader rd, string[] names, object owner)
{
return 5; // Constant Value
}
public object NullSafeSet(ICommand cmd, object value, int index)
{
// empty, we dont want to write
}
public SqlType[] SqlTypes { get { return new SqlType[0]; } }
}
答案 1 :(得分:0)
key.Map(x => x.MyItemType).ReadOnly().Formula(((int)MyEnum.MyValueType).ToString()).CustomType<int>();