0

linq クエリに問題があります。横にドロップダウン リストがある検索フィールド (テキスト ボックス) が必要です。「ProductID」にドロップダウンリストを設定すると、テーブル「ProductID」でのみ検索する必要があり、「Productinformation」に配置すると、テーブル「productinformation」で検索する必要があります。

だから私が欲しいのは次のクエリです:

    var textboxvalue = TextBox1.Text;
            var dropdownsearch = DropDownList1.SelectedValue;    

var Metadata = from m in db.Metadatas
                               join mm in db.Multimedias
                               on m.multimediaID equals mm.multimediaID
                               where (m. {{{Here i want the dropdownsearch}}} .ToString().Contains(textboxvalue) ||
                                      mm. {{{Here i want the dropdownsearch}}} .ToString().Contains(textboxvalue))


                               select new
                               {
                                   mm.ProductID,
                                   mm.filename,
                                   mm.filetype,
                                   mm.filesize
                               };

では、ドロップダウンリストから選択した値をクエリのテーブルとして取得するにはどうすればよいですか? 通常、m.ProductID をクエリに入れますが、その中に Selected の値が必要ですm.(Dropdownlist1.Selectedvalue)... またはm.dropdownsearch.. それは可能ですか? そしてどうやって?

ありがとう :)

4

1 に答える 1

0
var Metadata = from m in db.Metadatas
               join mm in db.Multimedias
               on m.multimediaID equals mm.multimediaID
               select new { m, mm };

var filtered = Metadata.Where("m." + dropdownsearch + " like '@0'", textboxvalue);
var filtered = Metadata.Where("mm." + dropdownsearch + " like '@0'", textboxvalue);
var result = filtered.Select(f => new
                               {
                                   f.mm.ProductID,
                                   f.mm.filename,
                                   f.mm.filetype,
                                   f.mm.filesize
                               };
于 2012-11-02T04:11:39.923 に答える