gpt4 book ai didi

asp.net-mvc - EntityFramework-连接字符串在哪里?

转载 作者:行者123 更新时间:2023-12-03 12:10:05 25 4
gpt4 key购买 nike

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

最佳答案

在尝试连接到现有数据库时(就像您在做的那样),我发现了“配置之上的约定”哲学。

如果您的DbContext类(例如Northwind)位于 namespace (例如MvcProject)中,则由于某种原因,EF不会将该类的名称与web.config中名为“Northwind”(或“MvcProject.Northwind”)的连接字符串进行匹配,然后它将创建一个默认为本地SQLEXPRESS实例的连接字符串,并使用一个名为“MvcProject.Northwind”的数据库。这将是一个空的数据库。而且,在意识到自己没有连接到正确的数据库之前,您会不知所措,试图弄清为什么没有返回数据。

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

namespace MvcProject
{
public class Northwind : DbContext
{
public Northwind() : base("Northwind") {}
}
}

希望可以帮助某人;-)

关于asp.net-mvc - EntityFramework-连接字符串在哪里?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5790325/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com