0

LINQを使って以下のようなクエリを書くことはできますか? 私にエラーを与えています

「double 型および string 型のオペランドには適用できません」

key = Request.QueryString["key"];

var query = from p in db.VERSIONs where p.vr_key == key select p;
4

3 に答える 3

3

これを試して:

Double key = Convert.ToDouble(Request.QueryString["key"]);

var query = from p in db.VERSIONs where p.vr_key == key select p;
于 2013-03-16T04:35:36.170 に答える
3

クエリ文字列は何でもかまいませんので、TryParse メソッドを使用して、文字列が互換性/変換可能であることを確認してください。そうしないと、ユーザーがキーに何かを入力するだけで簡単にコードを壊す可能性があります。

double key;
if(Double.TryParse(Request.QueryString["key"], out key))
{
    var query = from p in db.VERSIONs 
                        where p.vr_key == key 
                        select p;
}
于 2013-03-16T04:41:50.517 に答える