Как подключиться к БД из ASP.NET Идентификатор, когда существует несколько строк подключения, включая azure?

#azure #asp.net-identity

#azure #asp.net-identity

Вопрос:

Как подключиться к БД из ASP.NET Идентификатор, когда существует несколько строк подключения, включая azure? ASP.NET Identity не удалось подключиться к базе данных, поскольку существует строка подключения Azure, отличная от строки подключения SQL. Выдает сообщение «Ошибка, связанная с сетью или конкретным экземпляром ….». Ошибка с кодом приведена ниже.

  var result = await UserManager.CreateAsync(user, model.Password);
  

Если я удалю строку подключения Azure, это сработает.

Ответ №1:

Для ASp.net в web.config, когда вы добавляете строку подключения, вы называете ее.

Вы можете получить доступ к каждой такой строке подключения и присвоить ей другую переменную, передав эту строку подключения вашему уровню доступа к данным.

 <connectionStrings>

  <add name="Sales" 
       providerName="System.Data.SqlClient"
       connectionString= "server=myserver;database=Products;uid=<user name>;pwd=<secure password>" />

  <add name="NorthWind" 
       providerName="System.Data.SqlClient" 
       connectionString="server=.;database=NorthWind;Integrated Security=SSPI" />

</connectionStrings>
  

В коде

  var conn1 = ConfigurationManager.ConnectionStrings["Sales"].ConnectionString;
 var conn2 = ConfigurationManager.ConnectionStrings["NorthWind"].ConnectionString;
  

В asp.net Ядро, в разделе Appsettings.json для identity, обычно у вас есть что-то вроде приведенного ниже

 {
"ConnectionStrings": {

    "DefaultConnection": "Server=(local);Database=Forum.Sentiment.Analyzer.Web;Trusted_Connection=True;MultipleActiveResultSets=true"

  }
}
  

Defualtconnection предназначено для identity как вы можете видеть, вы можете добавить другую строку подключения с другим значением имени в свой файл Appsettings.json.

Надеюсь, это поможет.