Asp.net mvc 将asp.net MVC从Beta版升级到1.0版

Asp.net mvc 将asp.net MVC从Beta版升级到1.0版,asp.net-mvc,updatemodel,Asp.net Mvc,Updatemodel,a) 目前我在asp.mvc测试版上部署了一个应用程序。。。但几天前,它拒绝工作,出现以下错误: 找不到方法:“System.String System.Web.Mvc.Html.LinkExtensions.RouteLink(System.Web.Mvc.HtmlHelper,System.String,System.Web.Routing.RouteValueDictionary,System.Web.RouteValueDictionary)” 版本信息:Microsoft.NET Fr

a) 目前我在asp.mvc测试版上部署了一个应用程序。。。但几天前,它拒绝工作,出现以下错误:

找不到方法:“System.String System.Web.Mvc.Html.LinkExtensions.RouteLink(System.Web.Mvc.HtmlHelper,System.String,System.Web.Routing.RouteValueDictionary,System.Web.RouteValueDictionary)”

版本信息:Microsoft.NET Framework版本:2.0.50727.3053;ASP.NET版本:2.0.50727.3053

谷歌搜索结果并没有给我相关的信息:(

b) 我的下一步是将应用程序升级到asp.net mvc 1.0。。。但这里我有一个新问题: 如果在测试版中,我有:

[AcceptVerbs(HttpVerbs.Post)]
    public ActionResult Edit(FormCollection entityform)
    {
        var entity = repository.GetById(1);

        UpdateModel(entity, entityform);
        repository.Update(entity);

        return View("Index", entity);

    }
然后是UpdateModel(映射,“/accepts IValueProvider或DefaultValueProvider/”

问题:

  • 这里发生了什么变化?(我想hostng环境已经发生了一些变化)
  • 我应该在这里调整什么以不破坏已经实现的功能
  • a) 当我升级我的web项目时,我注意到web.configs中包含的内容是不同的。请注意,在主项目目录和视图中都有2个web.configs。我建议创建一个新的MVC1.0项目,并将web.configs与您的测试版进行比较

    b) 我只是使用UpdateModel传递实体,如果您已经将FormCollection传递给ActionResult,这将相应地更新它

    public ActionResult Edit(FormCollection entityform) { var entity = repository.GetById(1); UpdateModel(entity); 公共操作结果编辑(FormCollection entityform) { var entity=repository.GetById(1); 更新模型(实体); public ActionResult Edit(FormCollection entityform) { var entity = repository.GetById(1); UpdateModel(entity);