Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/entity-framework/4.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
Entity framework 实体框架是否使用默认的初始目录?它做了哪些假设?_Entity Framework_Sql Server 2008_Connection String - Fatal编程技术网

Entity framework 实体框架是否使用默认的初始目录?它做了哪些假设?

Entity framework 实体框架是否使用默认的初始目录?它做了哪些假设?,entity-framework,sql-server-2008,connection-string,Entity Framework,Sql Server 2008,Connection String,我在一个新的EF项目中(几乎)做了所有正确的事情,但是我忘记了在EF上下文类中使用命名的连接字符串,所以它使用了默认值 它在SQLExpress默认数据目录中创建了一个新的数据库,并且工作得非常好 当我意识到我的错误时(在疑惑了很久为什么app_数据文件夹中没有显示任何文件之后),我重命名了该类以使用命名的连接字符串,然后我不断得到以下错误: 无法完成操作。这个 提供的SqlConnection不可用 指定初始目录 我知道如何解决这个问题,但是,EF对我来说就像魔术一样!我不敢相信它能像它那样工

我在一个新的EF项目中(几乎)做了所有正确的事情,但是我忘记了在EF上下文类中使用命名的连接字符串,所以它使用了默认值

它在SQLExpress默认数据目录中创建了一个新的数据库,并且工作得非常好

当我意识到我的错误时(在疑惑了很久为什么app_数据文件夹中没有显示任何文件之后),我重命名了该类以使用命名的连接字符串,然后我不断得到以下错误:

无法完成操作。这个 提供的SqlConnection不可用 指定初始目录


我知道如何解决这个问题,但是,EF对我来说就像魔术一样!我不敢相信它能像它那样工作,我只是好奇它默认使用了什么/是否有“假设”列表如果您未指定任何内容,EF将代表您使用?

默认情况下,它使用与上下文同名的数据库,但一旦指定自定义命名连接字符串,您必须通过
初始目录
数据库
参数提供所用数据库的名称。

我也有同样的问题,但我通过更改
web.conf
。您需要指定初始目录和集成安全性,并创建用户实例

下面是正在工作的web.conf:

add name="MovieDBContext"
   connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|Movies.mdf;Initial Catalog=Movies;Integrated Security=SSPI;User Instance=true"
   providerName="System.Data.SqlClient"