我在运行时遇到了id为空的错误。这是我所有的部分。“参数字典包含非空参数的非空类型”?
这里是我的DAL,ProjectDB
public static List<Product> IsOrganic(int lotid)
{
using (var db = new ProductDB())
{ //Selects from database in SQL what we need
//IsDamaged is Organic, and bool for true/false for food
DbCommand cmd = db.GetSqlStringCommand("SELECT * FROM PRODUCTS WHERE ORGANIC = 1");
return FillList(db.ExecuteDataSet(cmd));
}
}
这里是我的经理
public List<Product> IsOrganic(int lotid)
{
return ProductDB.IsOrganic(lotid);
}
这里是我的控制器
public ActionResult Organic(int id)//Store/Organic
{
ProductManager mgr = new ProductManager();
var list = mgr.IsOrganic(id);
return View(list);
}
而且,这里是我的全球
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
);
如果您无法传入参数,那么您会得到该错误。 – 2012-04-24 21:15:06
错误描述了问题所在。你的请求和路由设置是什么样的? – asawyer 2012-04-24 21:15:36
当框架尝试调用您的控制器方法时,该错误发生在较高级别。执行没有达到你展示的代码。 – GSerg 2012-04-24 21:16:53