编程语言
首页 > 编程语言> > c#-在Mongo中使ASP.NET身份存储用户数据(托管在Heroku上)

c#-在Mongo中使ASP.NET身份存储用户数据(托管在Heroku上)

作者:互联网

我目前正在开发一个使用Mongo作为后端的ASP.Net Web应用程序.我已经看到其他人尝试此操作,并更改了Web.config中的连接字符串以指向Heroku上的Mongo实例.我的连接字符串格式如下:

mongodb://username:password@server.mlab.com:port/database

创建具有选定单个帐户的新ASP.Net MVC项目后构建的控制器和模型尚未编辑.我无法创建新帐户或无法使用通过Mongo创建的帐户登录.我还收到以下错误:

Format of the initialization string does not conform to specification
starting at index 0.

我的研究表明,这通常是由于格式不正确的连接字符串引起的.我已经对Mongo连接字符串进行了两次和三次检查,但是看起来正确.我想念什么吗?

任何帮助表示赞赏!

———————————————

编辑

我注意到在连接字符串中有providerName =“ System.Data.SqlClient”.删除它会产生另一个错误:

The connection string ‘DefaultConnection’ in the application’s
configuration file does not contain the required providerName
attribute.

解决方法:

默认的Asp.Net身份存储提供程序正在使用实体框架,该实体框架适用于关系数据库. MongoDB是一个文档数据库,仅更改连接字符串将不起作用.您需要使用可以与MongoDB配合使用的其他存储提供程序.

快速搜索发现很少有与MongoDB一起使用的存储提供程序:

> https://github.com/maxiomtech/MongoDB.AspNet.Identity
> https://github.com/g0t4/aspnet-identity-mongo
> https://github.com/steentottrup/AspNet.Identity.MongoDB

我没有亲自尝试过它们,但是第一个似乎在GitHub上很受欢迎.

标签:mongodb,heroku,asp-net-identity,c,asp-net-mvc
来源: https://codeday.me/bug/20191025/1931434.html