我在实体框架中映射了一个表,可以很好地添加/更新和删除记录。我从SQL服务器中删除了一个名为“Category”的列,然后在模型中重新映射了我的实体。这个工作正常,专栏消失了。
现在,我在表上运行查询以更新行并获得相同的错误,无效的列“类别”。
这已经从SQL表中删除并从实体中删除了,所以当我运行以下代码时它仍然在寻找这个该死的列吗?
using (Entities db = new Entities())
{
var Voucher = (from vouchers in db.Vouchers
where vouchers.ID == ID
select vouchers).FirstOrDefault();
if (Voucher != null)
{
Voucher.Status = (int)Vouchers.UI.Enums.VoucherStatus.Removed;
ret = db.SaveChanges() == 1;
}
}
这是错误:
无效的列名称“类别”。
我已经清理了代码,构建,重新构建并更新了大约100次。
有没有人有任何想法?
由于
答案 0 :(得分:22)
从* .EDMX文件中删除该表,然后将该表再次添加到* .EDMX文件
答案 1 :(得分:7)
我曾经也删除并重新添加表,但从来没有这样。 我宁愿做什么。我关闭模型。右键单击并以XML格式打开,然后手动删除此引用。 因此,它使我的多个图表在一个模型中保持相同,也保持我定义的颜色。
答案 2 :(得分:4)
无需从* .EDMX文件中删除整个表,只需从* .EDMX文件中删除不必要的字段即可。它帮助了我
答案 3 :(得分:2)
我也遇到过与设计视图.edmx文件中删除列相关的问题。其他选项是帖子前面提到的删除表并将其重新添加到.edmx文件中的内容。
答案 4 :(得分:0)
另一种解决方案是在Entity Framework图中找到表,然后删除“类别”(Category)列并保存模型文件。
答案 5 :(得分:0)