我目前正在使用Visual Studio 2010并创建了一个“ASP.NET MVC 3 Web应用程序”。
由于Darin指出的原因,我已经将问题从SQLite更改为MySQL。
所以我设置了我的MySQL数据库并配置了web.config,如this answer所示,但是我得到了即时配置错误:
分析程序错误消息:无法加载文件或程序集“MySql.Web,Version = 6.2.2.0,Culture = neutral,PublicKeyToken = c5687fc88969c44d”或其依赖项之一。系统找不到指定的文件。
第78行:type =“MySql.Web.Security.MySQLRoleProvider,MySql.Web
这是因为公钥错了吗?
由于
答案 0 :(得分:1)
您需要编写一个与SQLite一起使用的自定义成员资格提供程序。这是一个example with MySQL。另请注意,SQLite不适用于多线程环境,例如ASP.NET。
答案 1 :(得分:1)
文件存在,但版本不匹配。检查是否为MySql连接器指定了正确的版本。这解决了我的问题。
将版本= 6.2.2.0更改为您正在使用的版本。
答案 2 :(得分:0)
试试这个
<add name="ApplicationServices"
connectionString="Data Source=|DataDirectory|sqlite.db;Version=3;"
providerName="System.Data.SqLite" />
如果您需要sqlite会员提供商,请查看此处:
答案 3 :(得分:0)
您安装了哪个版本的MySQL连接器?我在版本号不匹配时看到了错误消息,当我纠正它们时它就消失了。您可以通过查看参考部分中项目的属性来检查版本。
一旦有效,您可能还需要添加默认会员提供商。您只需将<membership>
更改为<membership defaultProvider="MySqlMembershipProvider">
。
我还遵循了here指令,这些指令将一堆表添加到与成员资格,配置文件和角色相关的指定数据库中。不确定这是否是必需的,但如果你仍然遇到问题,可以尝试一下。
希望这有帮助!