0

DB からデータソースごとにドロップダウン リストを生成していますが、DB には重複した値 (同じ列) があり、重複した値を持つドロップダウン リストに反映されています。

私はエンティティフレームワークとラムダを使用しているので、これを試しました:

  public IList<ModelSQL.puzzlecontent> GetID(int id)
    {
        return context.puzzlecontents.Where(i => i.WordPuzzleID == id).Distinct().ToList();
    }

ModelSQL は、私の CRUD クラス ファイル ( puzzlecontent ) で構成されるフォルダー名です。

ただし、上記のコードはエラーを表示しませんが、ドロップダウン リストで重複する値を削除するのには役立ちません。

4

2 に答える 2

1

すべての列で Distinct を呼び出しています。そのテーブルに Auto Identity などの一意の列がある場合は、常にすべてのレコードを取得します。

個別の前に選択を使用し、必要な列のみを選択して一意の列を除外します

 public IList<ModelSQL.puzzlecontent> GetID(int id)
    {
        return context.puzzlecontents.Where(i => i.WordPuzzleID == id).Select(pc=>new{
              Column1 = pc.Column1,Column2 = pc.Column2    
        }).Distinct().ToList();
    }
于 2013-09-03T06:17:13.300 に答える