【发布时间】:2016-01-16 10:32:10
【问题描述】:
使用 Ado.net 的内部连接无法正常工作。请查看随附的代码并告诉我。我在“值”中成功接收字符串数组值。我认为我的代码本身存在一些问题。
public JsonResult searchdata(String[] values,String[] values1,String[] values2)
{
//String str;
//for (int i = 0; i <= values.Length; i++)
//{
// str = values[i];
// Console.WriteLine(str);
//}
using (SqlConnection connection = new SqlConnection("data source=.; database=Srivatsava; integrated security=SSPI"))
{
DataSet ds = new DataSet();
connection.Open();
SqlCommand cmd = connection.CreateCommand();
String str= "select accntname,BU,salesop,isdormant from fourth_page as fg"+
" INNER JOIN linked as ld on ld.productid=fg.productid"+
"INNER JOIN isdormant as it on it.productid=ld.productid"+
"where fg.accountname in" + values;
cmd.CommandText = str;
SqlDataAdapter mySqlDataAdapter = new SqlDataAdapter();
mySqlDataAdapter.SelectCommand = cmd;
mySqlDataAdapter.Fill(ds);
foreach (DataRow dr in ds.Tables[0].Rows)
{
Console.WriteLine(dr[0].ToString() + "" + dr[1].ToString() + "" + Convert.ToInt32(dr[2]) + "" + Convert.ToBoolean(dr[3]));
}
connection.Close();
}
return Json(values);
}
【问题讨论】:
-
什么不起作用,你期望什么结果,你得到什么
-
控制在调试时没有进入循环。我在 ajax 调用中收到 500 错误。
-
这意味着你抛出了一个异常。调试你的代码。
-
一个问题,我的内连接查询是否正确?
-
我怎么可能知道您的表结构,但
"where fg.accountname in" + values;可能是个问题(但同样,您希望任何人猜出values的值是多少)。并用正在发生的事情的细节编辑你的问题。只需注释掉代码以确认是否存在问题。
标签: asp.net-mvc asp.net-mvc-4 ado.net asp.net-ajax