我是一个 Entity Framework 新手,正在尝试在 MySql 数据库之上开发一些简单的 Sitefinity CMS 附加组件。
该数据库与 Sitefinity 本身完美配合;但是,当我自己的 EF 代码尝试与其连接时,我总是收到错误:
Cannot open database "MyDatabase" requested by the login. The login failed. Login failed for user 'IIS APPPOOL\myApp'.
我使用的连接字符串是:
<add connectionString="Server=localhost;Uid=MyUserId;Pwd=MyPassword;Database=dev_MyDatabase;CharacterSet=utf8" providerName="System.Data.SqlClient" dbType="MySQL" name="MyDatabase" />
用户(id 和密码)是在 MySQL 中创建的,因此,当尝试将其放入 IIS(应用程序池 > 高级设置...)时,它会显示“指定的用户名不存在”。
知道我在这里缺少什么吗?
谢谢, 哈利
最佳答案
我发现您正在使用 Entity Framework 。
您的上下文是什么样的?如果您有一个继承 DbContext 基本构造函数的构造函数,则需要确保在参数中传递正确的名称。对于您的情况,它应该如下所示:
public class MyContext : DbContext
{
public MyContext():
base("MyDatabase")
{
}
}
关于mysql - 在 MySQL 中使用 Entity Framework 时,用户 'IIS APPPOOL\myApp' 登录失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22318742/