【问题标题】:“Invalid Column Name” in C#C# 中的“无效列名”
【发布时间】:2020-01-18 14:53:59
【问题描述】:

即使所有列都存在于 Sql Server 的表中,我在 Visual Studio 中也会收到错误“列名无效”。表列名称是 AttandanceId 但它显示“无效列名称”错误,即。 AttandanceId1 在 Sql Server 表中不存在于 Attandance

public IActionResult EmployeeReport(int id)
{
    var viewModel = new AttandanceViewModel();
    var EmployeeList = _dbContext.Employees.ToList();

    viewModel.DropFirstName = new SelectList(EmployeeList, "EmployeeId", "FirstName");
    viewModel.AttList = _dbContext.Attandance.Where(i => i.EmpId == id).ToList();
    ViewBag.Id = id;
    var Count = viewModel.AttList.Count();

    ViewBag.Counts = Count;
    return View(viewModel);
}

【问题讨论】:

  • 你能给我们你的类Employees的结构吗?
  • @public int EmployeeId { 获取;放; } [必需] public int SN { get;放; } 公共字符串名字 { 获取;放; } [必需] 公共字符串姓氏 { 获取;放; } [必需] 公共字符串性别 { 获取;放; } [必需] 公共字符串地址 { 获取;放; } [必需] 公共字符串电子邮件 { 获取;放; } [ForeignKey("DeptId")] public int 部门
  • 实体使用映射文件,如果数据库中的名称发生更改,则必须更新该文件。映射文件将数据库名称链接到 c# 中的类。类本身不足以确定问题。
  • 是的,我完全同意@dweng 的评论。 has to be updated if the name in the database changes。顺便说一句,您能否打断点进行调试,而不是向我们提供有关您的问题的更多详细信息?您收到错误的数字行代码?
  • 你能提供你做过的相关代码吗?另外,请提供您设计的数据库表,以便我们检查您的问题。顺便说一句,您可以编辑您的问题以添加一些示例代码。无需在注释中添加代码。

标签: c# sql-server visual-studio c#-4.0 c#-2.0


【解决方案1】:

我认为您在 sql 表中进行了一些更改,然后尝试更新未成功更新的数据模型,例如正如您提到的 AttandanceId 和 AttandanceId1 显示冲突。

简单地做

  • 1:删除您的表或完整模型并清理您的解决方案。

  • 2:再次添加表/模型并构建您的解决方案,每一个想法都会
    很好

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-24
    • 2021-08-19
    • 1970-01-01
    • 2023-03-18
    相关资源
    最近更新 更多