2014-04-11 46 views
0

我有一個名爲「KelimeTuru」設計了一個模型類,如下所示:TableName.RowName檢索沒有在MVC

public partial class KelimeTuru 
    { 
     public int Id { get; set; } 
     public int KelimeId { get; set; } 
     public int MenseiId { get; set; } 
     public int TurId { get; set; } 
     public int AnlamTurleriId { get; set; } 
     public int SozlukTuruId { get; set; } 
     public Nullable<int> SesId { get; set; } 
     public Nullable<int> VideoId { get; set; } 
     public Nullable<int> ResimId { get; set; } 
     public Nullable<int> SembolId { get; set; } 
     public Nullable<int> BirimId { get; set; } 
     public Nullable<int> SimgeId { get; set; } 
     public string Anlam { get; set; } 
     public string Transkript { get; set; } 

     public virtual AnlamTurleri AnlamTurleri { get; set; } 
     public virtual Birim Birim { get; set; } 
     public virtual Kelime Kelime { get; set; } 
     public virtual Mensei Mensei { get; set; } 
     public virtual Sembol Sembol { get; set; } 
     public virtual Ses Ses { get; set; } 
     public virtual Simge Simge { get; set; } 
     public virtual SozlukTuru SozlukTuru { get; set; } 
     public virtual Turler Turler { get; set; } 
     public virtual Video Video { get; set; } 
     public virtual Resim Resim { get; set; } 
    } 

,它檢索所需要的數據,如果我們使用記錄的標識正確喜歡這個:

public ActionResult Details(int id=0) 
     { 
      SozlukEntities db = new SozlukEntities(); 
      KelimeTuru kelime = db.KelimeTuru.Find(id); 

      if (kelime == null) 
      { 
       return HttpNotFound(); 
      } 
      return View(kelime); 
     } 

我想根據檢索記錄他們的「KelimeId」不是「ID」 S如此一詞改爲「身份證」在我的代碼「KelimeId」。但得到了「404.0 - 未找到」的錯誤。 你能幫我用KelimeId檢索「KelimeTuru」表嗎?

+0

這意味着你正在傳遞的KelimeId,記錄不是在數據庫中反對它 –

+0

但我有表中的KelimeId的記錄 –

+0

如何調用細節?通過Ajax調用?你能否更新更多細節? – SivaRajini

回答

2

試試這個:

KelimeTuru kelime = db.KelimeTuru.SingleOrDefault(x => x.KelimeId == id); 

查找方法僅適用於主鍵屬性,如果你的財產都裝飾有[Key]屬性意味着,那麼Find()將能夠找到記錄,否則它將無法獲取記錄。

+0

Ehsan你是一個了不起的人,你知道嗎? :) 再次感謝,修復! –

+0

@Ehsan爲什麼KelimeId參數不起作用? – SivaRajini

+0

它無法使用查找,我懷疑不確定使用主鍵搜索搜索 –

2

這聽起來像你想是這樣的:

KelimeTuru kelime = db.KelimeTuru.Where(x => x.KelimeId == id).SingleOrDefault(); 
+0

謝謝!這也是正確的答案! –