设置数据库模式名称而不设置表名

时间:2015-06-26 12:16:00

标签: c# entity-framework entity-framework-6 database-schema

我想为表设置数据库模式名称,但唯一的方法是使用方法ToTable

modelBuilder.Entity<MyEntity>().ToTable("MyTable", schemaName);

但是我不想明确设置表名,我需要这样的东西:

modelBuilder.Entity<MyEntity>().ToSchema(schemaName);

任何人都可以帮我吗?

1 个答案:

答案 0 :(得分:-1)

使用此扩展方法:

using System.Data.Entity.ModelConfiguration;
public static class ModelConfigurationHelper
{
    public static EntityTypeConfiguration<T> ToSchema<T>(this EntityTypeConfiguration<T> config, string schema)
    {
        return config.ToTable(typeof(T).Name, schema);
    }
}

你可以这样做:

protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
    modelBuilder.Entity<MyEntity>().ToSchema("someSchema);
}