0

やあみんな私は問題を抱えています。私はエンティティによる選択クエリの作成に取り組んでおり、?reqid=2 のような URL の ID で選択する必要があります。

これは問題を解決しようとして作成したコードですが、次のメッセージが表示されます: LINQ to Entities はメソッド 'Int32 ToInt32(System.String)' メソッドを認識しません。このメソッドはストア式に変換できません。

string a = Request.QueryString["reqid"].ToString(); 

MasterPackEntities obj = new MasterPackEntities();
var ds = obj.news.Where(x => x.id == Convert.ToInt32(a)).ToList();
4

2 に答える 2

3

クエリ プロバイダーは変換を理解できないため、クエリの外部で変換を行います。

//consider using `TryParse` to handle invalid input
int a = int.Parse(Request.QueryString["reqid"].ToString());

MasterPackEntities obj = new MasterPackEntities();
var ds = obj.news.Where(x => x.id == a).ToList();
于 2013-10-30T16:22:12.330 に答える
0

がSQL ステートメントとしてLINQ to Entities変換しようとして失敗するため、このエラーが発生します。Convert.ToInt32あなたはこのようにすることができます:

int a = Convert.ToInt32(Request.QueryString["reqid"].ToString()); 

MasterPackEntities obj = new MasterPackEntities();
var ds = obj.news.Where(x => x.id == a).ToList();
于 2013-10-30T16:23:52.773 に答える