流利的NHibernate持续计算属性

时间:2016-10-06 12:52:19

标签: nhibernate fluent-nhibernate fluent-nhibernate-mapping

我正在使用FluentNHibernate,主要是在必要时偶尔进行映射覆盖自动化。

我正在尝试设置一个不寻常的实体类。当有人设置电话号码时,我想计算然后自动保留删除了非数字字符(StrippedTelephoneNumber)以及原始TelephoneNumber的号码。

即:(+ 44)7723 9982 199 => 4477239982199

我正在尝试创建一个具有以下结构的类,但是当我运行应用程序时,我不断收到异常。我的代码如下(实体是具有Id属性的基类):

public class TelephoneEntity : Entity {

    // Backing Field
    private string _telephoneNumber;

    public virtual string TelephoneNumber {
        get {
           return _telephoneNumber;
         }
        set {
            _telephoneNumber = value;
            if(_telephoneNumber != null) {
                StrippedTelephoneNumber = new string(_telephoneNumber
                    .Where(c => char.IsDigit(c)).ToArray());
            }
        }
    }

    public virtual string StrippedTelephoneNumber { get; set; }

}

我主要使用自动化,所以我没有映射类,但我让任何人试图解决这个问题:

public class TelephoneEntityMapping : IAutoMappingOverride<TelephoneEntity> {
    public void Override(AutoMapping<TelephoneEntity> mapping) {
        mapping.Id(m => m.Id);
    }
}

有谁能告诉我这里哪里出错?

0 个答案:

没有答案