[英]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.