public static IList<Order> GetOrdersBySql( string sql, params SqlParameter[] values )
{
List<Order> list = new List<Order>(); try
{
DataTable table = DBHelper.GetDataSet( sql, values );
foreach (DataRow row in table.Rows)
{
Order order = new Order();
order.Id = (int)row["Id"];
order.OrderDate = (DateTime)row["OrderDate"];
order.TotalPrice = (decimal)row["TotalPrice"];
order.User = UserService.GetUserById((int)row["UserId"]); //FK
list.Add(order);
}
return list;
}
catch (Exception e)
{
Console.WriteLine(e.Message);
return null;
}
} public static IList<Order> GetOrdersBylog(string loginid)
{
string sqlby = "select * from orders where userid=(select id from users where loginid=@loginid)";
}
这是我的SQL语句 怎么才能正确调用上面的方法?
{
List<Order> list = new List<Order>(); try
{
DataTable table = DBHelper.GetDataSet( sql, values );
foreach (DataRow row in table.Rows)
{
Order order = new Order();
order.Id = (int)row["Id"];
order.OrderDate = (DateTime)row["OrderDate"];
order.TotalPrice = (decimal)row["TotalPrice"];
order.User = UserService.GetUserById((int)row["UserId"]); //FK
list.Add(order);
}
return list;
}
catch (Exception e)
{
Console.WriteLine(e.Message);
return null;
}
} public static IList<Order> GetOrdersBylog(string loginid)
{
string sqlby = "select * from orders where userid=(select id from users where loginid=@loginid)";
}
这是我的SQL语句 怎么才能正确调用上面的方法?
记得给sqlby 添加参数。直接下不就行了GetOrdersBySql( sqlby , loginid)
public static IList<Order> GetOrdersBylog(string loginid)
{
string sqlby = "select * from orders where userid=(select id from users where loginid=@loginid)";
return GetOrdersBySql(sqlby,loginid);
}
错误 2 与“MyBookShop.DAL.OrderService.GetOrdersBySql(string, params System.Data.SqlClient.SqlParameter[])”最匹配的重载方法具有一些无效参数
错误 3 参数“2”: 无法从“string”转换为“System.Data.SqlClient.SqlParameter[]”
SqlParameter怎么初始化你自己再试试或者是return GetOrdersBySql(sqlby,new SqlParameter[]{(loginid)});其实这个方法参数就写错了,params和 []一齐用啥意思?
public static IList<Order> GetOrdersBySql( string sql, params SqlParameter[] values )
可以写成
public static IList<Order> GetOrdersBySql( string sql, params SqlParameter values )
params SqlParameter[] values 两个返回值啊。
弄一个IList<Order> 变量接收方法名 填入2个变量。
另一个是SQL语句的参数数组。