gpt4 book ai didi

c# - 未找到连接字符串 WebSecurity.IntializeDatabaseConnection

转载 作者:行者123 更新时间:2023-11-30 21:01:20 25 4
gpt4 key购买 nike

在一个测试项目中,我使用的是 SimpleMembershipProvider 和 Entity Framework 5。测试项目使用 localdb 创建了一个数据库,但它突然停止工作了。我不确定发生了什么变化,但我很困惑。这几乎是样板文件:

    private static void InitializeSimpleMembership()
{
Database.SetInitializer<TestEfhContext>(null);
using (var context = new TestEfhContext(ConnectionString))
{
if (!context.Database.Exists())
{
// Create the SimpleMembership database without Entity Framework migration schema
((IObjectContextAdapter)context).ObjectContext.CreateDatabase();
}

WebSecurity.InitializeDatabaseConnection(ConnectionString, "Users", "UserID", "UserName", autoCreateTables: true);

}
}

ConnectionString 不是 app.config 中的键时,它应该创建一个同名的数据库,并为用户模型初始化它。如果 localdb 数据库尚不存在,则创建成功。 WebSecurity.InitializeDatabaseConnection 现在因

而失败
`Connection string "testdb" was not found.`

在进行故障排除时,我尝试更改连接字符串以使用实际的连接字符串而不是别名:

WebSecurity.InitializeDatabaseConnection(context.Database.Connection.ConnectionString,
"Users", "UserID", "UserName", autoCreateTables: true);

这解析为 localdb 服务器的完整连接字符串:

Data Source=(localdb)\\v11.0;Initial Catalog=testdb;Integrated Security=True;MultipleActiveResultSets=True;Application Name=EntityFrameworkMUE'

我认为这至少会奏效。不是这样的:

Connection string "Data Source=(localdb)\v11.0;Initial Catalog=testdb;Integrated Security=True;MultipleActiveResultSets=True;Application Name=EntityFrameworkMUE" was not found.

有什么想法吗?这是我使用 EF 的第一个项目,因此其中一些项目对我来说仍然有点神秘。当我第一次设置测试项目时,它就像魔术一样工作,我无法理解可能发生了什么变化。初始化程序甚至不能使用真正的连接字符串似乎特别奇怪。实际应用程序仍然可以正常工作,我现在无法让测试项目工作。

最佳答案

有两个非常相似的 InitializeDatabaseConnection 方法,这引起了混淆。

行:

WebSecurity.InitializeDatabaseConnection(context.Database.Connection.ConnectionString,
"Users", "UserID", "UserName", autoCreateTables: true);

始终需要一个必须存在在您的配置的 appSettings 中的连接字符串名称。

要专门传入您自己的连接字符串,InitializaDatabaseConnection 方法需要传入 6 个参数。额外的参数排在第二位,是提供者名称。

关于c# - 未找到连接字符串 WebSecurity.IntializeDatabaseConnection,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14278820/

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