Vraag Hoe stel ik ASP.NET MVC Identity in om mijn eigen verbindingsreeks te gebruiken?


Ik heb een MVC5-app die EF gebruikt. Ik zou ASP.NET Identity willen toevoegen en ik heb gemerkt dat de verbindingsreeks voor ASP.NET-identiteit "DefaultConnection" gebruikt. Wat moet ik doen om ASP.NET Identity-tabellen te maken in mijn reeds bestaande db (source = DILS-S1301; oorspronkelijke catalogus = MVC5;) zoals gespecificeerd in MVC5Entities en niet DefaultConnection => (LocalDb)\v11.0?? bedankt

<connectionStrings>
    <add name="DefaultConnection" connectionString="Data Source=(LocalDb)\v11.0;AttachDbFilename=|DataDirectory|\aspnet-MySuperAwesomeMVCApp-20131105011429.mdf;Initial Catalog=aspnet-MySuperAwesomeMVCApp-20131105011429;Integrated Security=True" providerName="System.Data.SqlClient"      />
    <add name="MVC5Entities" connectionString="metadata=res://*/Models.Mvc5Model.csdl|res://*/Models.Mvc5Model.ssdl|res://*/Models.Mvc5Model.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=DILS-S1301;initial catalog=MVC5;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" />
</connectionStrings>

Ik heb geprobeerd "DefaultConnection" aan te passen zoals zo:

<connectionStrings>
    <add name="DefaultConnection" connectionString="Data Source=DILS-S1301;AttachDbFilename=|DataDirectory|\MVC5.mdf;Initial Catalog=MVC5;Integrated Security=True" providerName="System.Data.SqlClient" />
    <add name="MVC5Entities" connectionString="metadata=res://*/Models.Mvc5Model.csdl|res://*/Models.Mvc5Model.ssdl|res://*/Models.Mvc5Model.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=DILS-S1301;initial catalog=MVC5;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" />
</connectionStrings>

maar nu krijg ik een foutmelding:

Database 'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\MVC5.mdf' already exists. Choose a different database name.
Cannot attach the file 'C:\Users\blah\Documents\Visual Studio 2013\Projects\MySuperAwesomeMVCApp\MySuperAwesomeMVCApp\App_Data\MVC5.mdf' as database 'MVC5'.

22
2017-11-06 13:28


oorsprong


antwoorden:


De vraag is eigenlijk: "Hoe stel ik ASP.NET Identity in om mijn eigen verbindingsreeks te gebruiken?"

Als bovenstaande de juiste samenvatting van uw vraag is, is hieronder het antwoord.

ASP.NET Identity gebruikt EntityFramework voor aan database gerelateerde taken. Dus je kunt de volgende optie gebruiken als geschikt.

Optie 1: De standaard verbindingsreeks van EntityFramework kan worden ingesteld met behulp van het volgende codefragment in web.config

<entityFramework>
  <defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework">
    <parameters>
      <parameter value="Data Source=(localdb)\v11.0; Integrated Security=True; MultipleActiveResultSets=True" />
    </parameters>
  </defaultConnectionFactory>
</entityFramework>

Optie 2: Programmatisch kunt u de naam ConnectionString ook doorgeven aan de constructor van DbContext. graag willen new ApplicationDbContext(MyConnectionString)


11
2017-11-06 15:32



Eigenlijk is het enige wat u hoeft te doen om de DefaultConnection connectionString als de gewenste verbindingsreeks te veranderen. Als u de normale instellingen voor een nieuw MVC 5-project hebt gebruikt en de identiteitstabellen niet in de nieuwe DB bestaan, worden ze daar automatisch gemaakt.

U hoeft het gedeelte van de verbindingsreeks niet te bewerken en u hoeft de constructor DbContext niet te bewerken, tenzij u de conntectionString-naam wilt wijzigen en niet in orde bent met het vervangen van de standaardverbindingsreeks.

Als je het goed vindt om de standaard verbindingsreeks te vervangen, zou je in staat moeten zijn om het te vervangen ... dit werkte voor mij.

Ik vond dit artikel ook nuttig: http://www.typecastexception.com/post/2013/10/27/Configuring-Db-Connection-and-Code-First-Migration-for-Identity-Accounts-in-ASPNET-MVC-5-and-Visual- studio-2013.aspx


4
2018-06-12 03:35