【发布时间】:2015-12-27 07:28:19
【问题描述】:
我在执行附加代码时遇到异常。请帮忙。我已成功从 ajax 调用中获取发布的数据,但无法使用 ado.net 执行选择操作。我正在用这个问题附加控制器代码。附加图像
控制器代码:-
public ActionResult notCk_Pk(String FirstName,String LastName,int? Salary,String Gender)
{
List<Counting> l = new List<Counting>();
//String FirstName = FirstName;
//String LastName = LastName;
//int Salary = Salary;
//String Gender = Gender;
string query = "select * from tblEm where FirstName=@FirstName";
string ConnectionString = ConfigurationManager.ConnectionStrings["EmployeeContext"].ConnectionString;
SqlDataAdapter da;
DataSet ds = new DataSet();
using (SqlConnection connection = new SqlConnection("data source=.; database=Srivatsava; integrated security=SSPI"))
{
using (SqlCommand cmd = new SqlCommand(query, connection))
{
cmd.Parameters.AddWithValue("@FirstName",FirstName);
//if (String.IsNullOrEmpty(n.FirstName))
//{
// cmd.Parameters.AddWithValue("@FirstName", DBNull.Value);
//}
connection.Open();
Object o=cmd.ExecuteScalar();
if (o != null)
{
string city = o.ToString();
}
connection.Close();
}
}
da = new SqlDataAdapter(query, ConnectionString);
da.Fill(ds);
foreach (DataRow dr in ds.Tables[0].Rows)
{
l.Add(new Counting() { FirstNamecount = Convert.ToInt32(dr[0]), LastNamecount = Convert.ToInt32(dr[1]), Salary = Convert.ToInt32(dr[2]), Gendercount = Convert.ToInt32(dr[3]) });
}
var todoListsResults = l.Select(
a => new
{
a.FirstNamecount,
a.LastNamecount,
a.Salary,
a.Gendercount
});
var jsonData = new
{
// total = totalPages,
// page,
//records = totalRecords,
rows = todoListsResults
};
return Json(jsonData, JsonRequestBehavior.AllowGet);
}
【问题讨论】:
-
但是我的代码在这个语句 cmd.ExecuteNonQuery();
-
对不起,忘了说,我用 ExecuteNonQuery() 替换了 ExecuteScalar
-
那更糟 -
ExecuteNonQuery()仅用于像INSERT、UPDATE、DELETE这样不返回的操作任何数据——你肯定想返回数据。 -
好的。实际上我正在通过 ajax 调用向上述控制器方法发布数据。是这个错误的原因吗?
-
查看我的回复 - 我已尝试解决您遇到的所有问题
标签: c# jquery asp.net-mvc ado.net asp.net-ajax