在.NET4.0下運行.NET2.0程式集

來源:互聯網
上載者:User

  微軟發布的dotnetfx2.0是相當成功的開發架構,由此產生了大量基於.NET2.0的應用,微軟後來發布的dotnetfx3.0及dotnetfx3.5都是對2.0的擴充,並添加了很多新的特性(如:linq、wpf、wcf、wwf、Lambda、類型推斷及簡化的文法等),但礙於龐大的dotnetfx3.5安裝部署都十分困難,dotnetfx2.0應用依然十分普遍。幾個月以前微軟發布了dotnetfx4.0,其強大的功能讓dotnetfx2.0的優勢消失殆盡,很多新的應用開發已經從.NET4.0開始了。由於.NET4.0使用全新的CLR,因此基於.NET2.0的程式集並不能直接在.NET4.0架構下運行,此時大量的基於dotnetfx2.0應用的升級就成了問題。

       雖然不能直接向下相容,但微軟已經提供了比較好的相容性解決方案:運行時目標版本啟用策略。基於.NET2.0的應用程式和程式集只要在設定檔中聲明運行時版本即可在新的架構下運行。對於此解決方案的官方說明在http://msdn.microsoft.com/zh-cn/library/bbx34a2h.aspx。

設定方法:在預設設定檔的根項目configuration下添加以下聲明( 傳統型應用程式為App.config、Web應用程式為Web.config):

   1:  <startup useLegacyV2RuntimeActivationPolicy="true">
   2:      <supportedRuntime version="v4.0"/>
   3:  startup>

        這裡Web應用程式的環境配置要複雜一些。當然首先要安裝dotnetfx4.0,如果是先安裝了IIS,則需要手動註冊IIS,註冊命令:

%windows%\Microsoft.NET\Framework\<版本號碼>\aspnet_regiis.exe -i

如果是伺服器版作業系統,則IIS中還有“Web服務擴充”選項,在選項中啟用ASP.NET v4.0.30319服務擴充;然後在網站的屬性中修改ASP .NET版本為v4.0.30319,至此,基於.NET2.0的應用程式就可以在.NET4.0下和WCF、linq等新功能一起運行了。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.