Oracle
 sql >> база данни >  >> RDS >> Oracle

ASP.NET MVC5 - Поддържане на потребителите в Oracle Database

Това може да пристигне малко късно за вас, но ще го оставя, в случай че някой друг се сблъска със същия проблем. Така че най-накрая успях да накарам Identity 2.0 и Oracle да работят заедно. Следните стъпки работят, ако не искате да правите никакви промени в IdentityUser по подразбиране (напр. ако сте добре да имате char ID вместо int или long) и просто искате таблиците във вашата съществуваща Oracle схема.

  1. Създайте таблици за идентичност на Oracle. Можете да промените имената на таблиците, ако желаете, просто се уверете, че сте включили необходимите колони, за да може Identity да работи с нея. Можете също да добавите всякакви допълнителни колони, от които може да се нуждаете в приложението си (скрипт, първоначално намерен на Devart , копирах го в същността в случай, че URL се повреди):

    Същността тук

  2. Ако използвате EDMX файл, трябва да добавите нов низ за връзка, тъй като този, който се генерира автоматично, няма да работи, трябва ви стандартен низ за връзка. Опитайте да следвате този шаблон:

    <add name="IdentityContext" connectionString="Data Source=localhost:1521/xe;PASSWORD=password;USER ID=username;" providerName="Oracle.ManagedDataAccess.Client" />

  3. Кажете на вашия ApplicationDbContext да използва новия ви connectionString

    public ApplicationDbContext()
        : base("IdentityContext", throwIfV1Schema: false)
    {
    }
    
  4. Кажете на Identity да използва вашата съществуваща схема и таблици. Добавете този метод в дефиницията на ApplicationDbContext, намерена в IdentityModels.cs:

    protected override void OnModelCreating(DbModelBuilder modelBuilder)
    {
        base.OnModelCreating(modelBuilder); // MUST go first.
    
        modelBuilder.HasDefaultSchema("YOUR_SCHEMA"); // Use uppercase!
    
        modelBuilder.Entity<ApplicationUser>().ToTable("AspNetUsers");
        modelBuilder.Entity<IdentityRole>().ToTable("AspNetRoles");
        modelBuilder.Entity<IdentityUserRole>().ToTable("AspNetUserRoles");
        modelBuilder.Entity<IdentityUserClaim>().ToTable("AspNetUserClaims");
        modelBuilder.Entity<IdentityUserLogin>().ToTable("AspNetUserLogins");
    }
    
  5. Реконструирайте и това е!

Кажете ми дали работи за вас!



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oracle SQL - Преобразуване на стойности на колони на N реда в N колони в 1 ред

  2. Sql - Обединяване на редове, ако датата се свързва

  3. Бързо опресняване при ангажиране на материализиран изглед

  4. Анализирайте HTML таблица с Oracle

  5. ангажиране след избиране