Добрый день,asp.net структура сущности растеряна
Моя программа дает мне столько неприятностей. Это внезапно дает мне ошибку:
Недопустимое имя столбца 'UserProfile_UserId'.
для этого кода:
public ActionResult Index()
{
---> var model = _db.Roles.ToList();
return View(model);
Который имеет смысл. Но проблема в том, что i.m даже не использует класс пользовательских профилей. Im использует класс Roles.
Вот мой контроллер:
FSKDb _db = new FSKDb();
//
// GET: /Roles/
public ActionResult Index()
{
var model = _db.Roles.ToList();
return View(model);
}
и вот мой DB Класс:
namespace Attempt3.Models
{
public class FSKDb : DbContext
{
public FSKDb() : base("name=DefaultConnection")
{
}
public DbSet<UserProfile> UserProfiles { get; set; }
public DbSet<Roles> Roles { get; set; }
}
}
Роли Класс:
[Table("webpages_Roles")]
public class Roles
{
[Key]
[DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)]
public int RoleId { get; set; }
public string RoleName { get; set; }
public string Description { get; set; }
}
UserProfile Класс
[Table("UserProfile")]
public class UserProfile
{
[Key]
[DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)]
public int UserId { get; set; }
public string UserName { get; set; }
public string Surname { get; set; }
public string ClientCode { get; set; }
public ICollection<Roles> UserRoles { get; set; }
}
Я не уверен, почему, когда я попытаться найти роли в моем контроллере, что EF пытается выглядеть для пользователя Profiles_UserID
Он должен смотреть только на том, что если я ищу для пользователя, а не роль. и даже таким образом, название coloumn UserProfile UserId просто «UserId», а не «UserProfile_UserId»
Благодаря
Эй, я скопировал весь код fr о твой вопрос, и у меня нет проблем. У вас есть что-то в OnModelCreating или на другой беглой api-части EF? –
Второй вопрос: ваш EF-код генерирует отношения «один ко многим» между пользователем и ролью (у одного пользователя есть много ролей, у одной роли есть один пользователь). Это кажется очень странным. Может быть, вам нужны отношения многие-ко-многим? (у одного пользователя много ролей, у одной роли есть много пользователей). Если это так, вы должны добавить в коллекцию классов ролей UserProfiles. –
Что-то очень странно, оно тоже работало для меня, и оно начиналось с этой ошибки, но это как-то связано с моими моделями. Я пытаюсь ввести роли в таблицу генерируемых ролей по умолчанию.}} – Zapnologica