0

私はasp.netとC#のチュートリアルを行っていますが、著者は私が理解しようとしているいくつかのコードを使用しました。私はそれが何をするかについての考えを持っていますが、私はただ確認したかっただけです.

 public IQueryable<Category> GetCategories()
    {
        var db = new WingtipToys.Models.ProductContext();
        IQueryable<Category> query = db.Categories;
        return query;
    }

私は少し混乱しています

 IQueryable<Category>

ラインと同様に

IQueryable<Category> query = db.Categories;

私が思うに、これは GetCategories() というメソッドで、Category オブジェクトのみを受け入れます。このメソッドは、新しいインスタンス productcontext を定義し、次に何らかのタイプのクエリを実行して返します。私は近くにいるかもしれませんし、離れているかもしれません。確認したいだけです。

4

3 に答える 3

1

IQueryable 戻り値の型は、GetCategories() メソッドで使用するすべてのフィルターを C# に渡してデータベースに直接渡すことを示すために使用されます。メソッドはすべてのカテゴリを返すように設定されていますが、より高いレベルでそれらを制限できます。これにより、考えられるフィルターごとに複数のメソッドを作成してデータベースに戻す必要がなくなります。

IEnumerable と IQueryable の違いに関する StackOverflow の例へのリンクを次に示します。

于 2013-11-10T01:05:47.877 に答える