2017-08-08 53 views
0

我需要他的FIO得到面試官的ID獲得從數據庫(ASP.NET)ID

我有表有這位模特

[Key] 
    public int Interwier_id { get; set; } 
    public string FIO { get; set; } 
    public string Email { get; set; } 
    public string Telephone { get; set; } 
    [DataType(DataType.Date)] 
    public int Birthday { get; set; } 
    public string City { get; set; } 
    public string Salary { get; set; } 
    public string English { get; set; } 
    public Nullable<int> Interview_Id { get; set; } 
    public string Status { get; set; } 
    public string Position { get; set; } 
    public string Current_work { get; set; } 
    public int Age { get { return DateTime.Now.Year - Birthday; } } 
    public virtual Interview Interview { get; set; } 
    [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly")] 
    public virtual ICollection<Link> Links { get; set; } 
    [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly")] 
    public virtual ICollection<Comment> Comments { get; set; } 
} 

我得到的名稱從文本字段這樣

interwierName: $("#name").text()

在這裏,後端代碼

public ActionResult AddComment(string name,string commentText, string interwierName) 
    { 
     var Id = db.InterwierModels 
      .Where(x => x.FIO == interwierName) 
      .Select(x => new 
      { 
       ID = x.Interwier_id 
      }).FirstOrDefault(); 

     //var idForCreating = Int32.Parse(Id.ToString()); 

     Comment cmnt = new Comment() 
     { 
      Author = name, 
      Comment1 = commentText, 
      Interview_Id = Id 
     }; 
     db.Comments.Add(cmnt); 
     db.SaveChanges(); 
     return Json(new { Result = "Success", Message = "Saved Successfully" }); 
    } 

但我有這個錯誤

嚴重性代碼說明項目文件的線路抑制狀態 錯誤CS0029不能類型隱式轉換:「詮釋」「<匿名int類型ID>」,以SmartSolutions C:\ Users \ Eugene \ Source \ Repos \ SmartWeb \ SmartSolutions \ Controllers \ InterwierController.cs 52 Active

我該如何解決它?

+0

因爲'Id'是包含命名'ID'屬性的對象(未一個'int')。使用'.Select(x => x.IInterwier_id).FirstOrDefault();' –

回答

0

替換此

var Id = db.InterwierModels 
      .Where(x => x.FIO == interwierName) 
      .Select(x => new 
      { 
       ID = x.Interwier_id 
      }).FirstOrDefault(); 

隨着

var Id = db.InterwierModels 
       .Where(x => x.FIO == interwierName) 
       .Select(x => x.Interwier_id) 
       .FirstOrDefault(); 
+0

感謝您的幫助! –