簡體   English   中英

SqlException:無效的列名稱(實體框架)

[英]SqlException: Invalid column name (Entity Framework)

我嘗試更新表列,但失敗。 這是我的控制器上更新的代碼:

public ActionResult AddDoctorsAppointment(string Start, string End, string Title, int? idPatient)
{
    Appointment appointmentDoc = new Appointment()
    {
        Start_appointment = Start,
        End_appointment = End,
        Title = Title,
        Type_of_appointment = "Doctors",
        Patient_Id = idPatient
    };
    db.Appointments.Add(appointmentDoc);
    db.SaveChanges();
    return Json(new { Result = "Success", Message = "Saved Successfully" });
}

這是約會的模型

public partial class Appointment
{
    public int Id { get; set; }
    public string Start_appointment { get; set; }
    public string End_appointment { get; set; }
    public string Title { get; set; }
    public string Type_of_appointment { get; set; }
    public Nullable<int> Patient_Id { get; set; }

    public virtual Patient Patient { get; set; }
}

當我嘗試更新時,出現此錯誤:

屏幕

我試圖找到列名Patient_Id1 ,但是我的項目中沒有。

清理和重建無濟於事。 我該如何解決這個問題?

如果首先是數據庫,則應通過將Patient_Id添加到表“約會”中來更新EDMX文件,然后重新生成解決方案。

如果首先是Code,則僅將此db字段添加到Appointment表中,然后運行它。

確保數據庫列與您的edmx正確匹配。 通常,當您的edmx和數據庫不同步時,會發生此錯誤

當我不小心創建一個表時,在列名的末尾有一個空格時,這發生在我身上。 我更新了模型,發現EF添加了下划線,這就是我發現錯誤的方式。 我刪除,更正並再次更新了模型。 這是該錯誤開始的時間。

在嘗試了幾乎所有內容之后,我完全刪除並重新創建了模型,並清理了項目。 一切。 僅此而已,我又恢復了業務!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM