Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 实体框架数据库能否首先从任何SQLServer数据库成功构建模型?_Sql Server_Entity Framework_Ef Database First - Fatal编程技术网

Sql server 实体框架数据库能否首先从任何SQLServer数据库成功构建模型?

Sql server 实体框架数据库能否首先从任何SQLServer数据库成功构建模型?,sql-server,entity-framework,ef-database-first,Sql Server,Entity Framework,Ef Database First,我正在考虑使用实体框架数据库优先的方法。该数据库使用各种非标准技术,例如“非正式”外键。我想确认,即使无法识别所有关系,仍然可以从该数据库创建可用的EF模型?是的,您可以这样做。按常规从数据库生成模型,然后修改生成的实体以引入关系。您需要设置空数据库初始值设定项,以告知EF不应尝试更新数据库以匹配其模型: Database.SetInitializer(new NullDatabaseInitializer<MyContext>()); 我在一个没有外键的MySQL数据库上使用了这

我正在考虑使用实体框架数据库优先的方法。该数据库使用各种非标准技术,例如“非正式”外键。我想确认,即使无法识别所有关系,仍然可以从该数据库创建可用的EF模型?

是的,您可以这样做。按常规从数据库生成模型,然后修改生成的实体以引入关系。您需要设置空数据库初始值设定项,以告知EF不应尝试更新数据库以匹配其模型:

Database.SetInitializer(new NullDatabaseInitializer<MyContext>());

我在一个没有外键的MySQL数据库上使用了这种方法。

谢谢。现在,您可以澄清一下,您指的是生成代码优先模型还是edmx?生成edmx,然后修改它生成的部分类
public class Child {
    // ...

    public int Parent_ID { get; set; }     // <-- non-standard name

    // Add these to introduce the navigation property without a formal relationship
    [ForeignKey("Parent_ID")]
    public virtual Parent Parent { get; set; }
}