【发布时间】:2012-01-10 01:11:54
【问题描述】:
我对 Executequery 有疑问: 错误消息:“指定的转换无效”。我试过了:
var qq = db.ExecuteQuery<class_search>(query, ddl4, ddl5, ddl1).ToList();
但同样的错误也是如此。我尝试了几种方法。当我尝试执行 IEnumerable 时,总是出现此错误或“查询结果不能多次枚举”。我读了很多文章,但我不知道怎么做。我做错了什么或遗漏了什么?
public class class_search
{
public string path_image
{ get; set; }
public string name_product
{ get; set; }
public float cost
{ get; set; }
}
public partial class Search : System.Web.UI.Page
{
DataClasses1DataContext db = new DataClasses1DataContext();
string ddl4 = DropDownList4.SelectedItem.Value;
string ddl5 = DropDownList5.SelectedItem.Value;
string ddl1 = DropDownList1.SelectedItem.Value;
string query = "select p.path_image, p.name_product, p.cost from Table1 a, Table2 p, Table3 k where a.column1 = {0} and a.column2 = {1} and k.column2 = {2} and p.IDForeignColumn1 = k.IDcolumn and p.IDForeignColumn2 = a.IDcolumn"
var qq = db.ExecuteQuery<class_search>(query, ddl4, ddl5, ddl1);
ListView1.DataSource = qq;
ListView1.DataBind();
}
//我把代码改成了eng语言。现在 a.column1、a.column2 和 k.column2 都是字符串类型。
【问题讨论】:
-
你定义的
quote应该是query吗? -
引用和查询一样吗?如果不是,
query是什么?也许不在 ExecuteQuery 中强制转换任何内容并从存储在 qq 中的字段创建 klasa_wyszukiwania 对象会更容易?请尽量避免使用波兰语,说英语的读者可能很难阅读;) -
a.budowa、a.system_operacyjny等的SQL类型有哪些 -
我刚刚编辑了代码并为 a.column 等编写了类型。
-
您是否尝试过在 SQLProfiler 运行时运行它,并检查针对数据库运行的查询,并且返回的结果与您预期的一样?可以通过这种方式追踪一些难以发现的错误。