报错:无法从int?转换为int

疑惑背景分析

在控制器方法中的一个参数允许为null值:public ActionResult GetByCategory(int? categoryId = null)
当把这里的categoryId传给服务类方法时 var products = service.LoadProductsByCategory((categoryId),报错。

微笑解决方法

这里的categoryId默认是是null,
而服务类方法所需要的类型是int,
需要强转一下: var products = service.LoadProductsByCategory((int)categoryId);

你可能感兴趣的:(int)