使用现有表进行代码优先迁移

Evg*_*niy 10 .net c# ef-migrations

在我的模型中我有导航属性语言:

public class IntegratorDescription : BaseContract
{
    [Key, Column(TypeName = "bigint"), DataMember]
    public long Id { get; set; }
    [DataMember, Column(TypeName = "bigint"), ForeignKey("Language")]
    public long LangId { get; set; }
    [DataMember]
    public string CompanyShortInfo { get; set; }
    [DataMember, Column(TypeName = "ntext")]
    public string CompanyInfo { get; set; }

    public virtual Models.Language Language { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

语言表已经存在并且由另一个ORM完成,我需要说迁移不要尝试创建语言表但只更新描述表.怎么样?

- "数据库中已经有一个名为'Languages'的对象."

Evg*_*niy 13

-IGNORECHANGES

支持空迁移,忽略当前模型中检测到的任何挂起的更改.这可用于创建初始的空迁移,以便为现有数据库启用迁移.NB执行此操作假定目标数据库架构与当前模型兼容.

http://coding.abel.nu/2012/03/ef-migrations-command-reference/

  • 如果它不存在,是不是有办法让它创建表,如果它存在则忽略该表?对我来说,这似乎是对EF的巨大疏忽. (12认同)