若要将现有 ASP.NET MVC 2
应用程序手动升级到版本 3,请执行以下操作:
1.
在您的计算机上新建一个空的 ASP.NET
MVC 3 项目。此项目将包含升级所需的一些文件。
2.
将以下文件从 ASP.NET MVC 3 项目复制到您的
ASP.NET MVC 2 项目的相应位置中。您将需要更新对 jQuery 库的所有引用以说明新的文件名 (jQuery-1.5.1.js):
·
/Views/Web.config
·
/packages.config
·
/scripts/*.js
·
/Content/themes/*.*
3.
将空白 ASP.NET MVC 3
项目解决方案的根目录中的 packages
文件夹复制到您的解决方案的根目录(位于 .sln 文件所在的目录中)中。
4.
如果您的 ASP.NET MVC 2
项目包含任何区域,则将 /Views/Web.config 文件复制到每个区域的 Views
文件夹中。
5.
在 ASP.NET MVC 2 项目的两个 Web.config 文件中,全局搜索并替换 ASP.NET MVC 版本。查找以下内容:
System.Web.Mvc, Version=2.0.0.0
将其替换为以下内容:
System.Web.Mvc, Version=3.0.0.0
6.
在“解决方案资源管理器”中,删除对
System.Web.Mvc 的引用(其指向版本 2 中的 DLL),然后,添加对 System.Web.Mvc (v3.0.0.0) 的引用。
7.
添加对 System.WebPages.dll
和 System.Web.Helpers.dll 的引用。这些程序集位于以下文件夹中:
·
%ProgramFiles%\
Microsoft ASP.NET\ASP.NET MVC 3\Assemblies
·
%ProgramFiles%\
Microsoft ASP.NET\ASP.NET Web Pages\v1.0\Assemblies
8.
在“解决方案资源管理器”中右击项目名称,然后选择“卸载项目”。然后,再次右击项目名称,并选择“编辑
项目名.csproj”。
9.
查找 ProjectTypeGuids 元素并将 {F85E285D-A4E0-4152-9332-AB1D724D3325} 替换为 {E53F8FEA-EAE0-44A6-8774-FFD645390401}。
10.
保存更改,右击项目,然后选择“重新加载项目”。
11.
在应用程序的根 Web.config
文件中,将以下设置添加到 assemblies 节中。
<add
assembly="System.Web.WebPages, Version=1.0.0.0, Culture=neutral,
PublicKeyToken=31BF3856AD364E35" />
<add
assembly="System.Web.Helpers, Version=1.0.0.0, Culture=neutral,
PublicKeyToken=31BF3856AD364E35" />
12.
如果项目引用任何使用
ASP.NET MVC 2 编译的第三方库,则将以下突出显示的 bindingRedirect 元素添加到应用程序根目录中的 Web.config 文件的 configuration 节下面。
<runtime>
<assemblyBinding
xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity
name="System.Web.Mvc"
publicKeyToken="31bf3856ad364e35"/>
<bindingRedirect
oldVersion="1.0.0.0-2.0.0.0" newVersion="3.0.0.0"/>
</dependentAssembly>