C# 公司名称';不可为空的类型';System.Int32';对于方法';System.Web.Mvc.ActionResult编辑公司列表(Int32)和#x27;asp.net mvc中出现错误

C# 公司名称';不可为空的类型';System.Int32';对于方法';System.Web.Mvc.ActionResult编辑公司列表(Int32)和#x27;asp.net mvc中出现错误,c#,asp.net-mvc,C#,Asp.net Mvc,我正在使用asp.NETMVCAPI 在数据库中 CompanyStId主键 在浏览器中写入Url时: 然后给出一个错误: 参数字典包含“WebParty.Controllers.companymstscscontroller”中方法“System.Web.Mvc.ActionResult EditCompanyMsts(Int32)”的不可为null类型“System.Int32”的参数“CompanyMstId”的null条目。可选参数必须是引用类型、可为null的类型或声明为可选参数。

我正在使用asp.NETMVCAPI

在数据库中

CompanyStId主键

在浏览器中写入Url时:

然后给出一个错误:

参数字典包含“WebParty.Controllers.companymstscscontroller”中方法“System.Web.Mvc.ActionResult EditCompanyMsts(Int32)”的不可为null类型“System.Int32”的参数“CompanyMstId”的null条目。可选参数必须是引用类型、可为null的类型或声明为可选参数。 参数名称:参数

namespace WebParty.Controllers
{
    public class CompanyMstsController : Controller
    {
       public ActionResult EditCompanyMsts(int CompanyMstId)
        {
            var companymst = poly.CompanyMsts.Find(CompanyMstId);
            //var companymst = poly.CompanyMsts.Where(x => x.CompanyMstId == CompanyMstId).First();
            companymstmodel companyrecordupdate = new companymstmodel();

            companyrecordupdate.CompanyCode = companymst.CompanyCode;
            companyrecordupdate.CompanyName = companymst.CompanyName;

             return View(companyrecordupdate);
        }

        [HttpPost]
        public JsonResult EditCompanyMsts(companymstmodel companymst)
        {
            var companyupdate = poly.CompanyMsts.Find(companymst.CompanyMstId);

            HttpResponseMessage response = staticvariable.client.PutAsJsonAsync("CompanyMsts", companymst).Result;
            return Json("your record update", JsonRequestBehavior.AllowGet);
        }
公司模型

namespace WebParty.Models
{
    public class companymstmodel
    {
        public int CompanyMstId { get; set; }
        public Nullable<int> CompanyCode { get; set; }
        public string CompanyName { get; set; }
Index.cshtml

 @Html.ActionLink("Edit", "EditCompanyMsts", new { CompanyMstId = item.CompanyMstId })
我有一个1018记录,当我在浏览器中写入此Url时


然后给出一个错误???

命名参数
id
(不是CompanyMstId),并且
1018
将绑定到该参数。您刚才所做的更改意味着您需要
?CompanyMstId=1018
。@我更改了代码,但仍然给出了一个错误。您做了错误的更改。我说的是更改参数的名称,而不是路由值的名称。@你能告诉我哪个地方需要更改吗??
 @Html.ActionLink("Edit", "EditCompanyMsts", new { CompanyMstId = item.CompanyMstId })