【问题标题】:Fluent NHibernate Mapping流畅的 NHibernate 映射
【发布时间】:2011-07-20 15:08:22
【问题描述】:

我有具有以下属性的类 filter.cs:

    public virtual int Id { get; set; }
    public virtual Attribute Attribute { get; set; }
    public virtual Int16 Type { get; set; }
    public virtual string FilterValue { get; set; }
    public virtual ReportConfiguration ReportConfiguration { get; set; }

Attribute 和 ReportConfiguration 是外键。

我做了这个映射:

        Id(a => a.Id).UnsavedValue(0).GeneratedBy.Identity();
        Map(a => a.Type);
        Map(a => a.FilterValue);
        References(x => x.ReportConfiguration).Column("IdReportConfiguration").Not.LazyLoad();
        References(x => x.Attribute).Column("IdAttribute").Not.LazyLoad();

另外,我有一个 Repository 类,例如方法:

public int Create(Filter F)
    {
        int FilterId = 0;
        Transactional(session =>
        {
            FilterId = (int)session.Save(F);
        });
        return FilterId;
    }

当我对Create(Filter F) 进行单元测试时,它产生了一个异常:

没有持久性: ....Filter.cs

我认为映射不正确。

有什么想法吗?

谢谢和最好的问候。

【问题讨论】:

    标签: c# nhibernate fluent-nhibernate nhibernate-mapping


    【解决方案1】:

    在这里试试:

    Fluent Nhibernate No persister for:

    来自上面的帖子:

    解决方案:出现此错误是因为该类不是公共的。只是改变 公开课,这种情况不会再发生。但是,如果你不 想要将程序集暴露在程序集之外仍然可以标记 构造函数为“内部”。

    这是你的情况吗?


    这是一个类似的问题:

    Fluent Nhibernate No Persistor for Class Name

    【讨论】:

    • 完美我的课堂公开。
    猜你喜欢
    • 2023-03-14
    • 2010-11-22
    • 2013-11-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-19
    • 2016-01-17
    相关资源
    最近更新 更多