c# - 实体类型不是当前上下文模型的一部分(C# - ASP.NET MVC)
问题描述
我正在使用 Entity Framework 为我的应用程序生成我的数据库模型,现在我正在尝试将一些数据提交到我的数据库中,但出现以下错误:
实体类型 SEC_USER 不是当前上下文模型的一部分。
我读过很多书,有时会显示此错误,因为连接字符串错误,但我知道我的连接字符串很好,因为我的应用程序中显示的第一个视图从数据库中带来了大量数据并且它运行良好。
向我抛出错误的代码如下,特别是该行db.SEC_USER.Add(user);
:
public ActionResult LogIn(Login log)
{
bool enter = _2Secure.Common.Data.Access.ldap.SignIn(log.Username, log.Password);
ViewBag.entra = enter;
if (enter)
{
SEC_USER user = new SEC_USER();
user.name = "Yesid Bejarano";
user.isAdmin = 1;
db.SEC_USER.Add(user);
db.SaveChanges();
return View("~/Views/Home/_GridViewPartial.cshtml");
}
else
return View("~/Views/Login/LogIn.cshtml");
}
我DbContext
有这个结构:
using System;
using System.Data.Entity;
using System.Data.Entity.Infrastructure;
public partial class VASARODEVEnti : DbContext
{
public VASARODEVEnti()
: base("name=VASARODEVEnti")
{
}
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Entity<SEC_USER>().ToTable("SEC_USER");
}
public virtual DbSet<SEC_ACTION> SEC_ACTION { get; set; }
public virtual DbSet<SEC_ROL> SEC_ROL { get; set; }
public virtual DbSet<SEC_USER> SEC_USER { get; set; }
public virtual DbSet<VAS_CATEGORY> VAS_CATEGORY { get; set; }
public virtual DbSet<VAS_PROYECT> VAS_PROYECT { get; set; }
public virtual DbSet<VAS_PROYECT_VULNERABILITY> VAS_PROYECT_VULNERABILITY { get; set; }
public virtual DbSet<VAS_PROYECT_VULNERABILITY_IP> VAS_PROYECT_VULNERABILITY_IP { get; set; }
public virtual DbSet<VAS_PROYECT_VULNERABILITY_IP_PORT> VAS_PROYECT_VULNERABILITY_IP_PORT { get; set; }
public virtual DbSet<VAS_PROYECT_VULNERABILITY_IP_URLS> VAS_PROYECT_VULNERABILITY_IP_URLS { get; set; }
public virtual DbSet<VAS_VULNERABILITY> VAS_VULNERABILITY { get; set; }
public virtual DbSet<VAS_VULNERABILITY_ENG> VAS_VULNERABILITY_ENG { get; set; }
public virtual DbSet<VAS_VULNERABILITY_PARENT> VAS_VULNERABILITY_PARENT { get; set; }
public virtual DbSet<VAS_VULNERABILITY_VULNERABILITY_PARENT> VAS_VULNERABILITY_VULNERABILITY_PARENT { get; set; }
}
我只是不知道还有什么可能导致错误。
解决方案
解决了:
数据库和实体中表的列不同。我用正确的列重新创建模型,现在正在工作。
推荐阅读
- javascript - 如何将我的胖箭头函数转换为 javascript 中的“正常”函数
- java - 如何从 Mongodb 的嵌入文档中获取所有记录
- mysql - SQL 中是否有命令在列表中选择 2 个或更多匹配项?
- sql - SQL:如何确定DB列中出现频率最高的数据长度?
- java - 在 JMeter 中解决库冲突的方法?
- python - 如何提取域名并将其插入新的 Pandas 列?
- python-3.x - 尝试更新 PIL.ImageGrab 但它不起作用
- python - AWS API Gateway 发送响应并触发 lambda
- node.js - 如何使用 ImageMagick 或 GraphicsMagick Node.js 从图像中获取哈希值?
- vue.js - 带有 Okta 身份验证的 Vuepress - 构建期间未定义窗口