3

FirstOrDefault を設定する次の 2 つの方法の違いがわかりません。

Product a = (from r in _context.Products where r.IDPROD.Equals(10) select r).FirstOrDefault();
Product a = (from s in _context.Products where s.IDPROD == 10 select s).FirstOrDefault<Products>();

誰かが私を簡単に説明できますか?

4

2 に答える 2

9
where r.IDPROD.Equals(10) select r).FirstOrDefault();

メソッドInt32.Equals() を使用。次に、コンパイラによって自動的に検出されたFirstOrdefault<T>場所(の型になります)。Tr

where s.IDPROD == 10 select s).FirstOrDefault<Products>()

==代わりに使用される演算子のオーバーロード。に強制的にキャストされた結果Products


拡張メソッド構文を使用してこれを記述します。

Product p = _context.Products.FirstOrDefault(p => p.IDPROD == 10);

クエリ構文と混ぜないでください。

于 2013-04-02T05:15:41.293 に答える
3

同じです。最初のバージョンは、推測されたジェネリック パラメーターを持つ FirstOrDefault です。

于 2013-04-02T05:14:37.123 に答える