将在新服务器上使用ASP.NET 4.0网站工作,该服务仅支持ASP.NET 4.8框架
我有一个旧网站,该网站是在.NET Framework 4.0上开发的,客户希望将此网站移至支持.NET 4.8框架的新服务器。
恐怕网站是否会在.NET 4.8框架上正常工作,因为我不确定是否存在完整的向后兼容性。
不幸的是,我无法对其进行测试,因为我无法访问新服务器。
我的理解是它应该起作用,我应该将框架指向4.8,在web.config中的cide下方。
< compilation debug =“ true” targetFramework =“ 4.8”>
我希望休息能够正常工作,例如< add assembly =“ system.web.extensions.design ..... 。
,因为它们都指向4.0
<compilation debug="true" targetFramework="4.5" >
<assemblies>
<add assembly="System.Web.Extensions.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add assembly="System.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A" />
<add assembly="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />
<add assembly="System.Web.DataVisualization, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add assembly="System.Data.Linq, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />
<!-- assembly doesnt work on MochaHost
<add assembly="System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add assembly="stdole, Version=7.0.3300.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
-->
<add assembly="System.Web.Abstractions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add assembly="System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add assembly="System.Data.Entity, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<add assembly="Microsoft.Office.Interop.Excel, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71E9BCE111E9429C" />
<add assembly="Microsoft.Office.Interop.Word, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71E9BCE111E9429C" />
<!---->
</assemblies>
</compilation>
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
.NET 4.8是.NET 4.0上的“扩展”。 Microsoft尝试向后兼容,您可以检查 https://lealen.microsoft.com/en-us/dotnet/framework/migration-guide/runtime/4.0-4.8 查看如果您运行网站(或其他任何其他程序)(或任何其他程序中的任何其他程序) .NET 4.0)在.NET 4.8运行时。大多数打破变化都有一个可以返回旧行为的开关,请参见上面的链接。
您甚至不必更改配置中的目标框架。更改
&lt;编译targetFrameWork =“ 4.8”&gt;
将导致网站在第一个请求下根据4.8(如果尚未预先编译)进行编译,该请求具有其自己的集合可以在页面上查看的更改。如有疑问,您可以在测试计算机或本地计算机上安装IIS,在新服务器上发布之前配置网站并进行测试。
.NET 4.8 is an 'extension' on .NET 4.0. Microsoft tries it's best to be backwards compatible, you can check https://learn.microsoft.com/en-us/dotnet/framework/migration-guide/runtime/4.0-4.8 for seeing what can break if you run your website (or any other program compiled in .NET 4.0) on the .NET 4.8 runtime. Most breaking changes have a switch that you can return to the older behavior, see the link above.
You don't even have to change the target framework in the config. Changing the
<compilation targetFramework="4.8" >
will cause the website to be compiled under 4.8 (if it hasn't been pre-compiled) on the first request, which has it's own set of changes that can be viewed on the page https://learn.microsoft.com/en-us/dotnet/framework/migration-guide/retargeting/4.0-4.8.In case of doubt, you can install IIS on a test computer or your local computer, configure the website and test before you release on the new server.