簡體   English   中英

NHibernate映射問題

[英]NHibernate Mapping Issue

我在現有數據庫中具有以下表集。

資源-ResourceID

LocalizedResource-LocalizedResourceID,ResourceID,語言,文化,LocalizedTerm

辦公室-OfficeId,NameResourceId

現在,我想查詢一個特定的辦公室,並返回一個特定語言文化組合的辦公室名稱,如果未找到指定語言和文化的條目,則回退到默認語言“ EN”和文化“ GB”。

所以像這樣

public class Office
{
    public virtual int OfficeId { get; set; }
    public string Name { get; set; }        
}

repository.GetOffice(5 /* id */,"zh" /* language */,"cht" /* culture */);

我們也想這樣做以節省資金...

repository.SaveOffice(office,"zh" /* language */,"cht" /* culture */);

目前,我們正在使用自定義書面存儲過程集(使用函數提取正確的名稱)進行所有映射。 顯然,這使我們放慢了速度,因為我們必須為所有原始代碼編寫很多SP。

這篇關於使用過濾器本地化NHibernate的文章可能有助於檢索對象,但是我不知道它是否對保存有幫助。

編輯添加:您可以將本地化名稱映射為Office上的集合,並在OFfice上使用方法從集合中查找本地化名稱。 根據您的應用程序如何使用Office對象,性能可能是可以接受的。

暫無
暫無

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

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