2016-07-29 7 views
-1

データベースに値が既に存在するかどうかを確認する方法Entity FrameworkでMVCを実行していて、コンポジットキーの要素がデータベースアプリケーションに既に存在するかどうかを確認したいのですが、メソッドは機能しませんか?私は私のコントローラデータベースASP.NET MVCに値がすでに存在するかどうかを確認しますか?

public JsonResult Check(int? id1, int? id2) 
    { 
     IQueryable<InspekcijskaKontrola> listaKontrola = db.InspekcijskeKontrole.Include(i => i.InspekcijskaTijela).Include(i => i.Proizvod).Select(i => i); 

     InspekcijskaKontrola inKontrola = listaKontrola.Where(i => i.InspekcijskoTijeloId == id1).Where(i => i.ProizvodId == id2).Select(i => i).Single(); 
     if (inKontrola!=null) 
     { 
      return Json(inKontrola, JsonRequestBehavior.AllowGet); 
     } 
     return Json(new InspekcijskaKontrola { InspekcijskoTijeloId = -1, ProizvodId = -1 }, JsonRequestBehavior.AllowGet); 
    } 

からするJsonResult方法で試してみましたそして、私は、スクリプトコードのビットを提供

function prikazi() { 
    var zahtjev = $.getJSON("/InspekcijskeKontrole/Check?id1=" + $("#kombo3").val() + "&id2=" + $("#kombo4").val()); 

    zahtjev.done(function (kontrola) { 

     if (kontrola.InspekcijskoTijeloId != -1 && kontrola.ProizvodId != -1) { 
      $("#p1").text("Inspekcijska kontrola za " + kontrola.ProizvodId + " je vec izvrsena"); 
      $("#modalni1").modal({ backdrop: "static" }); 
     } 
    }); 
} 
+0

は、すでにここで試したものをいくつかのコードを提供しますが、右のバット私はあなたがオブジェクトからキー(またはそれ以上)を検索するには、このようなものを使用することをお勧めできます。 DBの既存の値を確認するには、ラムダ式を使用したSQLクエリまたはLINQを使用する方法があります。 –

+0

これは、データベースとの通信に使用するものによって異なります。 Entity Frameworkを使用していますか? –

+0

はい私はEFを使用していますが、コンポジットキーがあり、そのキーの値がすでにデータベースに存在するかどうかを確認したい場合は、メッセージをポップアップするようにしてください。 – Jhony2

答えて

-1

と私の視界からモーダルダイアログを発祥しようとした

は本当に役立つだろう。

if(dbContext.Items.Any(anyObjectName=>anyObjectName.firstKey == ValueYouLookFor 
            && anyObjectName.secondkey == AnotherValue)) 
{ 
    //logic to apply if object exists 
} 
+0

より良い解決策はdbSetのFind(id1、id2)です – Jhony2

+0

実際に値がすべてキーの一部である場合、findは動作しますが唯一のキーがIDであるIDとその名前を持つユーザーのようなものを探すと、それは機能しません。存在するかどうかを確認するためにAnyを使用するか、First/FirstOrDefault(存在する場合はオブジェクトを取得するため)。とにかく、あなたのソリューションを見つけてうれしく思います。将来的には幸運です –

関連する問題