我遇到了错误asking for the App_Data local db,但是我没有在项目中使用本地数据库,而是在服务器上使用在线Db。
以下是我创建网站的步骤:
1-新的ASP.Net Web应用程序-> MVC –个人用户身份验证
2-运行该应用程序,然后注册一个新用户 (这是我认为问题开始的地方)–因为此时,它在App_Data上创建了本地数据库
3-使用SQL Server Management Studio创建SQL Server 2017数据库并添加我的表
4-从数据库中将数据库作为ADO.Net实体数据模型-> EF设计器导入到项目中 (使用新的connectionString)
5-更新DefaultConnection以链接到新数据库
6-运行项目并注册新用户(在新DB上创建的标识表) 我没有将身份表导入ADO.Net实体数据模型
7-通过smarterasp.net在线上传数据库
8-将connectionStrings更新到新的在线数据库
9-继续在网站上工作...
10-发布网站->并要求附加App_Data本地数据库!
在项目中没有引用任何本地数据库。如何在不创建新应用程序的情况下修复此本地数据库问题。
<connectionStrings>
<add name="DefaultConnection" connectionString="Data Source=SQL5041.site4now.net;
Initial Catalog=DB_Name;
User Id=admin;
Password=***;"
providerName="System.Data.SqlClient" />
<add name="RP" connectionString="metadata=res://*/RPDatabaseModel.csdl|res://*/RPDatabaseModel.ssdl|res://*/RPDatabaseModel.msl;
provider=System.Data.SqlClient;
provider connection string="Data Source=SQL5041.site4now.net;Initial Catalog=DB_Name;User Id=admin;Password=***; MultipleActiveResultSets=true;""
providerName="System.Data.EntityClient" />
答案 0 :(得分:0)
尝试禁用您的roleManager。在您的web.config中,删除整个roleManager部分,并将其替换为:
<roleManager enabled="false" />
有关更多信息,在您的machine.config中,您可能会有这样的一行:
<add name="AspNetSqlRoleProvider"
connectionStringName="LocalSqlServer" applicationName="/" type="..."/>
还有这样的连接字符串:
<add name="LocalSqlServer"
connectionString="...localdb..."
providerName="System.Data.SqlClient"/>
因此将角色管理器条目保留在其中使Asp.Net开始 在
IdentityDbContext
之前查看此本地数据库。卸下 条目意味着它会尝试对条目进行罚款,但会失败。所以唯一 解决方案是完全禁用它。