Я пытаюсь выяснить, установлен ли мой DBC-контекст. Веб-приложение, которое я пытаюсь сделать, это использовать ASP.NET 5, MVC6 и EF7.EF7 Неправильная настройка DBC-контекста?
Он подключен к базе данных, содержащей 3 таблицы (комментарий, обзор, фильм). Это моя модель
WebDbModel.cs
using Microsoft.AspNet.Identity.EntityFramework;
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
namespace WebExample.Models
{
public partial class Comment : IdentityUser
{
public string CommentId { get; set; }
public string ReviewId { get; set; }
public string Author { get; set; }
public System.DateTime Created { get; set; }
}
public partial class Review : IdentityUser
{
public string ReviewId { get; set; }
public string Name { get; set; }
public string Author { get; set; }
public string Creator { get; set; }
public string Status { get; set; }
public Nullable<System.DateTime> CreatedOn { get; set; }
}
public partial class Film : IdentityUser
{
public string ReviewId { get; set; }
public string FilmID { get; set; }
public string CommentId { get; set; }
public Nullable<int> CommentCount { get; set; }
public string FilmName { get; set; }
public virtual ICollection<Comment> Comments { get; set; }
public virtual Review Review { get; set; }
}
}
Тогда я класс по имени
RegistrationDbContext.cs
using Microsoft.AspNet.Identity.EntityFramework;
using Microsoft.Data.Entity;
namespace WebExample.Models
{
public class ApplicationUser : IdentityUser
{
}
public class RegistrationDbContext : IdentityDbContext<ApplicationUser>
{
protected override void OnModelCreating(ModelBuilder builder)
{
base.OnModelCreating(builder);
// Customize the ASP.NET Identity model and override the defaults if needed.
// For example, you can rename the ASP.NET Identity table names and more.
// Add your customizations after calling base.OnModelCreating(builder);
}
// Registration of the DB tables we are mapping.
public DbSet<Comment> Comments { get; set; }
public DbSet<Review> Reviews { get; set; }
public DbSet<Film> Films { get; set; }
}
}
I A m интересно отсюда, что такое использование public class ApplicationUser: IdentityUser Я не уверен, что я должен оставить его там ... Если я его удалю, то в моем Startup.cs следующий код будет жаловаться ...
// Add Identity services to the services container.
services.AddIdentity<ApplicationUser, IdentityRole>()
.AddEntityFrameworkStores<RegistrationDbContext>()
.AddDefaultTokenProviders();
Так что я не знаю, что заменить его, учитывая тот факт меня комментарий, Обзор моделей и Film ...
Так что мой вопрос ... Я думаю, Я могу удалить класс ApplicationUser (автоматически генерируется, когда я создаю ed мое решение), поскольку это не часть моей модели вообще, но ... что я должен поставить вместо этого?
Не слишком уверен, что мой вопрос прав, хотя, поэтому извиняйтесь заранее! Это, казалось, сильно изменился по сравнению с MVC5, EF6 и я не мог нормально слишком много документации вокруг IdentityDbContext
Кроме того ... я пропускаю что-то еще в RegistrationDbContext.cs класса? Единственная дополнительная вещь, которую я добавил, это регистрация таблиц ... остальные поступили в класс по умолчанию.
Спасибо!
Большое вам спасибо! Я больше понимаю логику! Да, вы были правы, мне не нужен класс ApplicationUser, поэтому я удалил его и ссылался на IdentityUser :) – user3587624
BTW. Если у меня есть другой вопрос, который не связан с этим, я должен открыть новый, верно? – user3587624
@ user3587624 Да, это так. Таким образом, у вас есть лучший шанс получить правильный ответ :) –