0

我有这样的映射。

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)
  });
}
}

如何将值设置为某些特定的项目类型。它是特定类型的组件。

4

2 回答 2

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]; } }
}
于 2012-07-08T19:00:40.700 回答
0
key.Map(x => x.MyItemType).ReadOnly().Formula(((int)MyEnum.MyValueType).ToString()).CustomType<int>();
于 2012-07-31T12:27:01.480 回答