簡體   English   中英

流利NHibernate映射

[英]Fluent NHibernate Mapping

我有具有以下屬性的 class 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();

另外,我有一個存儲庫 class 例如,方法如下:

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

當我進行Create(Filter F)的單元測試時,它產生了一個異常:

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

我認為映射不正確。

任何想法?

謝謝和最好的問候。

在這里試試:

Fluent Nhibernate 無持久性:

從上面的帖子:

解決方案:出現此錯誤是因為 class 未公開。 只需將 class 更改為 public 就不會再發生這種情況。 但是,如果您不想在程序集之外公開程序集,您仍然可以將構造函數標記為“內部”。

這是你的情況嗎?


這是一個類似的問題:

Fluent Nhibernate No Persistor for Class 名稱

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM