c# - Entity Framework - 本地化实体 - 最佳解决方案?

标签 c# entity-framework

我正在使用 EF7 本地化处理 ASP.NET vNext 项目。我知道如何提供将存储在数据库中的本地化数据。请问,什么是最好的解决方案?甲、乙或丙?还是存在更好的?

解决方案 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 可以为每个属性创建 key + language + value 的静态资源。此资源已缓存。表中的行包含资源文件的键。此实现会导致速度降低吗?

最佳答案

我会说 c 是最好的解决方案。 Nopcommerce 通过保持松耦合来做到这一点。

关于c# - Entity Framework - 本地化实体 - 最佳解决方案?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32570119/

相关文章:

c# - 使用 Entity Framework Code First Development,我可以让它在现有数据库中创建一个或多个表吗?

entity-framework - 如何从 Entity Framework 4.3 升级到 EF 5

c# - asp.net检查重复并将数据插入sql

c# - 将数字放入范围 C#

c# - 几种方法的 BDD 命名

c# - 如何将实体从一个 Entity Framework 上下文复制到另一个 Entity Framework 上下文?

c# - IoC 统一 : registering an Entity Framework ObjectContext for Dependency Injection

c# - 我的计时器事件崩溃,因为事件是在不同的线程上调用的

c# - 使用动态参数从 C# 调用 javascript 方法

sql-server - 使用 SQL Server 的 ASP.NET 成员资格