[英]Entity Framework - localized entity -best solution?
我正在使用EF7本地化工作ASP.NET vNext項目。 我知道如何提供將存儲在數據庫中的本地化數據。 請問,什么是最好的解決方案? A,B還是C? 還是存在一些更好的?
解決方案A:
public class BaseEntity
{
[Key]
public Guid Id { get; set; }
public BaseEntityModel()
{
this.Id = new Guid();
}
[Required]
public virtual Language Language { get; set; }
public virtual ICollection<BaseEntity> Translations { get; set; }
}
public class Language
{
public Guid Id { get; set; }
[StringLength(8)]
public string Code { get; set; } // Unique
public string Name { get; set; }
}
解決方案B :(使用復合鍵 - RowId和languageID)這樣......
public class BaseEntity
{
[Key, Column(Order = 0)]
public Guid Id { get; set; }
public BaseEntityModel()
{
this.Id = new Guid();
}
[Key, Column(Order = 1)]
public Guid LanguageId { get; set; }
[Required]
public virtual Language Language { get; set; }
}
解決方案C:由NopCommerce使用。 Nop可以使用鍵+語言+值為每個屬性創建靜態資源。 此資源已緩存。 表中的行包含資源文件的密鑰。 這種實施會降低速度嗎?
我會說c是最好的解決方案。 Nopcommerce通過保持松散耦合的方式做到了最好的方式。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.