首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >EntityFramework -连接字符串在哪里?

EntityFramework -连接字符串在哪里?
EN

Stack Overflow用户
提问于 2011-04-26 20:30:36
回答 8查看 42.8K关注 0票数 20

我已经从我的web.config中删除了连接字符串,实体框架仍然连接到数据库!在哪里设置连接字符串?这是一个问题,因为我需要使我的网站的实时版本指向实时数据库。

EN

回答 8

Stack Overflow用户

发布于 2011-06-19 08:34:14

这是我在尝试连接到现有数据库时发现的“约定重于配置”哲学的一个陷阱(就像您正在做的那样)。

如果您的DbContext类(例如Northwind)位于名称空间(例如MvcProject)中,由于某种原因,EF不会将类的名称与web.config中名为"Northwind“(或"MvcProject.Northwind")的连接字符串进行匹配,然后它只会创建一个默认到本地SQLEXPRESS实例的连接字符串,以及一个名为"MvcProject.Northwind”的数据库。这将是一个空数据库。在你意识到你没有连接到正确的数据库之前,你会试图弄清楚为什么你得不到任何数据。

我解决这个问题的方法(不是很优雅,但这是我找到的修复它的最快方法):向DbContext类添加一个构造函数,该构造函数使用web.config中的连接字符串的名称调用基类-例如

代码语言:javascript
复制
namespace MvcProject
{
    public class Northwind : DbContext
    {
        public Northwind() : base("Northwind") {}
    }
}

希望这对外面的人有帮助;-)

票数 16
EN

Stack Overflow用户

发布于 2011-04-26 23:26:05

你需要这样的东西:

代码语言:javascript
复制
<configuration>
  <connectionStrings>
    <add name="MyContext"
         connectionString="Data Source=.\SQLEXPRESS;Integrated Security=SSPI;Initial Catalog=YourDatabaseName"
         providerName="System.Data.SqlClient" />
  </connectionStrings>
</configuration>

或者,如果您的数据库位于App_Data文件夹中:

代码语言:javascript
复制
<configuration>
  <connectionStrings>
    <add name="MyContext"
         connectionString="Data Source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|YourDatabaseFilename.mdf;User Instance=True"
         providerName="System.Data.SqlClient" />
  </connectionStrings>
</configuration>

用扩展DbContext的类名替换MyContext

票数 9
EN

Stack Overflow用户

发布于 2011-08-04 23:07:17

EF无法为我找到连接,但我在base()中使用了连接字符串:

代码语言:javascript
复制
namespace MvcProject 
{     
    public class Northwind : DbContext     
    {         
        public Northwind() : 
            base("Data Source=servername;Initial Catalog=database;User ID=yourID;Password=yourPass;Trusted_Connection=False;") {}
    }
}  

只是为了测试一下连接,它已经成功了。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5790325

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档