は私が識別子の代わりに文字列連結を使用してlinqクエリを実行できますか?
var queryItems = rawQuery.ObsDataResultList.AsQueryable().Where("Name = @0 AND AuthoredDate = " + dateKey.ToString(), selectedItem).ToList();
注私は変更さ唯一の事は、識別子を削除したにクエリを更新したい
var queryItems = rawQuery.ObsDataResultList.AsQueryable().Where("Name = @0 AND AuthoredDate = @1" +, selectedItem, dateKey).ToList();
正常に動作し、クエリを持っています。今、私はエラーを受け取ります。
Operator '='オペランドタイプ 'DateTime?'と互換性がありません。 「Int32」
元のクエリに戻すことなくエラーを修正するにはどうすればよいですか?
なぜあなたはそれをしたいですか?なぜあなたは慎重に良いクエリを崩壊したいのですか? –
@ MarkByers - 私はそのようなwhereステートメントのリストをとり、それらを構造体の定数として格納する予定です。構造体は、サポートされているクエリの単一の参照ポイントになる可能性があります。リストのパラメータでは、パラメータの数が大幅に変わる可能性があるため、これを行うのは難しいです。最初のフォームにいくつかの技術的利点がありますか?例えば。注射を避けるためにパラメータをパラメータ化するのに似た何か? –
@PBrianMackey:はい、注射を受けることができます。なぜパラメータのリストを保存するのが難しいのですか? –