私の理解では、主キーのみをパラメータとして取ります。これは、探している値が実際にプライマリキーである場合に効果的です。私の場合、私はこのようなクラスを持っている:CodeFirst(EntityFramework)で非主キーを取得するためにFindを使用する
public class Chamber
{
[Key]
public int Id {get;set;}
public string ChamberName { get; set; }
}
私は与えられたChamberName
が私のコンテキストまたはデータベース自体のいずれかに存在するかどうかを確認したいです。どうやってやるの?何らかの形でコンテキストを最初に列挙してから、db.Chambers.where(a=>a.ChamberName.equals...
のような呼び出しでデータベースで検索しなければなりませんか?
ChamberName
がプライマリキーの場合はうまく動作しますが、そうではありません。
おかげで、
ありがとう、Eranga。それで、findのようにワンショットでやる方法はありませんか?つまり、コンテキストを検索し、存在しない場合はデータベースを検索します。答えに感謝します。私はローカルについて知らなかった。 –
@PeterKellner 'Find'メソッドは内部的に何か類似しています。おそらく、再利用可能なメソッドを実装できます。 – Eranga
はい、または拡張メソッド。私はlamdasの周りを渡すことになると、常に論理的に挑戦しています。 –