Entity Framework 条件なしでDBから値をとってくる

2013/01/11

やりたいことは、下記のような感じのこと。

var q = "select * from ○○○";
if(××× != null){
  q += " where xxx=" + ×××;
}
q += ";";

Entity Frameworkってヤツで下記のような感じにした。

var q = _db._table;
if (_xxx != null) {
  q = q.Where(x=> x.xxx == _xxx);
}

結果は「System.Linq.IQueryable を System.Data.Entity.DbSet に暗黙的に変換できません。明示的な変換が存在します。(cast が不足していないかどうかを確認してください)」というエラー。

「q = _db._table」だと式が中途半端というようならエラーらしい。

条件によってWhere句をつける・つけないってするなら最初にとりあえずの条件をつけておく必要があるらしい。

var q = _db._table.Where(x => true);
if (_xxx != null) {
  q = q.Where(x=> x.xxx == _xxx);
}

こんな感じ。

新着(ニュース関連以外)

2018-07-26
年賀状で「新春」とか書くけど・・・何故なんだろうと8月を目前にした今、疑問に思った。
2018-05-16
PHPで画像のヘッダ情報(?)の「Orientation」を元に画像回転させたい。
2018-03-05
Android Studioをインストール。エミュレータを軽くするトコまで終わらせたかったけど、挫折した。
2018-02-23
プッシュ通知について調べてた時にでてきたServiceWorker。そのServiceWorkerについてのメモ。
2017-12-13
jqueryで取得したDOM要素をオブジェクトじゃなくて、配列で受け取りたい