0

I created an asp.net MVc 3 application using Visual studio 2010. It was working fine. I uploaded to hosting which has asp.net MVc 3 installed and it worked. I opened this MVC 3 solution in visual studio 2012. At that time, It did some up gradation. It created

151Marketing.v11.suo
UpgradeLog.html
UpgradeLog.xml

and a folder named _UpgradeReport_Files and backup folder.

When I publish this on live server, I get errors of framework. I see a backup folder as wel as I guess it was created before conversion by VS 12. Should I use that or is there any other way to change the current version of code to work on hosting because after i opened it in VS 12, I made several changes as well.

Please suggest

4

2 回答 2

0

可能您的 MVC3 项目已更新到 MVC4。

用旧的 mvc3 替换项目类型 GUID(在您的 .csproj 文件中):

<ProjectTypeGuids>{E53F8FEA-EAE0-44A6-8774-FFD645390401};{349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids>

如果是这种情况,请注意使用的引用库(版本)。

如果您使用 MVC4,您应该将程序集本地复制到 /bin 目录中。此外,它可能已切换到 4.5 框架。您可能希望将其降低到 4.0。顺便说一句,MVC4 也适用于框架 4.0。

如果这不起作用,您可能最好创建一个新的 MVC3 项目,并从旧项目中复制所有 cshtml 和控制器(而不是 web.config)。

如果您具有管理权限,您还可以安装 Visual Studio 2010 的 asp.net mvc4 更新。如果您不想本地复制 MVC4 程序集,您可能需要在服务器上安装 MVC4 运行时。

于 2013-05-04T09:07:00.527 回答
0

查看您的 web.config 并查看 MVC 的引用是否已升级到 MVC4。如果是这样,请将它们恢复为 MVC3 引用。

似乎我发现处理升级的一个好方法是将解决方案和项目等备份到文件夹中......然后当您升级/打开/转换为使用 vs 2012 时,您可以使用“超越比较”或 WinMerge " 或其他比较工具,看看哪些文件被更改了。

如果有任何文件被更改,它将是 .sln / .csproj / web.config 等...

我从 MVC 3 转到 MVC 4 beta 时遇到问题,我在这里发布:MVC 4 Beta side by side installation error

你的问题是不同的,但我可能会从 web.config 开始

您可能已经在 vs 2010 mvc 3 中进行了这样的设置:

<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>
</assemblyBinding>

现在也许它看起来像这样?

  <dependentAssembly>
    <assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" />
    <bindingRedirect oldVersion="1.0.0.0-4.0.0.0" newVersion="4.0.0.0" />
  </dependentAssembly>
于 2013-05-06T06:20:45.837 回答