[英]ASP .NET MVC Database First Individual User Accounts
我正在使用ASP .NET开发大型MVC Web应用程序。 我将其设置为“数据库优先”,而不是“代码优先”。
通过使用单个用户帐户身份验证创建Web应用,它可以为其创建模型,视图,控制器和数据库。
但是我想更改迁移以在云中使用托管数据库。 我试图在IdentityModel.cs
更改[base("DefaultConnection",...)]
以使用托管数据库,并且我还尝试在Web.config
上进行更改
这不是一个好主意! :D
请帮我!
您只需要在Web.config文件中搜索“ DefaultConnection” ConnectionString,将其替换为远程服务器的信息即可,这足以连接到托管数据库。
它看起来应该像这样:
<add name="DefaultConnection" connectionString="data source=**YourServer**;initial catalog=**YourDatabaseName**;user id=**DatabaseUsername**;password=**DatabasePassword**" providerName="System.Data.SqlClient" />
我像您一样从事一个项目。 我正在使用数据库优先方法。 使用个人用户身份验证创建项目后,您需要将这些用户表传输到数据库中。 您可以使用架构比较来做到这一点。
在SQL Server Object Explorer
>找到包含用户表的localdb>右键单击> Schema Compare
然后选择目标(您的数据库),然后单击右上角的Compare
。
选择要转移到数据库的表。
完成此编辑Web.config
文件后:
<add name="DefaultConnection" connectionString="Data Source=YourServerName;Initial Catalog=YourDatabaseName;Integrated Security=True" providerName="System.Data.SqlClient" />
(此connectionString用于使用项目提供的默认模型,控制器和操作。如果要为用户操作创建自己的函数,则只需在传输表之后添加以下行。)
在此,提供商名称很重要。 不要碰碰运气 此连接字符串用于用户操作。
然后添加ADO.NET实体数据模型以将其他表与Entity Framework一起使用
<add name="YourEntityName" connectionString="metadata=res://*/Models.Model1.csdl|res://*/Models.Model1.ssdl|res://*/Models.Model1.msl;provider=System.Data.SqlClient;provider connection string="data source=YourServerNameL;initial catalog=YourDBName;integrated security=True;multipleactiveresultsets=True;application name=EntityFramework"" providerName="System.Data.EntityClient" />
providerName
在这里也很重要。
我在(模型文件夹)中添加ado.net
在web.config上,将新的连接字符串更改为“ DefaultConnection”
在Dbcontext“ my ado.net”中更改为:base(“ DefaultConnection”)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.