天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

VS 2010 和 .NET 4.0 系列之《多定向支持》篇

系列文章導(dǎo)航:

VS 2010 和 .NET 4.0 系列之《ASP.NET 4 中的SEO改進(jìn) 》篇

VS 2010 和 .NET 4.0 系列之《干凈的Web.Config文件 》篇

VS 2010 和 .NET 4.0 系列之《起始項(xiàng)目模板》篇

VS 2010 和 .NET 4.0 系列之《多定向支持》篇

VS 2010 和 .NET 4.0 系列之《多顯示器支持》篇

VS 2010 和 .NET 4.0 系列之《代碼優(yōu)化的Web開(kāi)發(fā)Profile》篇

VS 2010 和 .NET 4.0 系列之《ASP.NET, HTML, JavaScript 代碼片段支持》篇

VS 2010 和 .NET 4.0 系列之《自動(dòng)啟動(dòng)ASP.NET應(yīng)用》篇

VS 2010 和 .NET 4.0 系列之《在ASP.NET 4 Web Forms中實(shí)現(xiàn)URL導(dǎo)向》篇

VS 2010 和 .NET 4.0 系列之《在VS 2010中查詢和導(dǎo)航代碼》篇

VS 2010 和 .NET 4.0 系列之《VS 2010代碼智能提示的改進(jìn)》篇

VS 2010 和 .NET 4.0 系列之《添加引用對(duì)話框的改進(jìn)》篇

VS 2010 和 .NET 4.0 系列之《內(nèi)置圖表控件》篇


  這是我針對(duì)即將發(fā)布的VS 2010 和 .NET 4所撰寫(xiě)的 貼子系列的第三篇。

  今天的貼子討論VS 2010中增強(qiáng)了的多定向(multi-targeting)支持,該支持允許你使用和定向.NET的多個(gè)版本。我們?cè)赩S 2010版本中做了重大的架構(gòu)級(jí)工作,實(shí)現(xiàn)了若干個(gè)新的多定向特性,提供了更佳的體驗(yàn)。

  理解并列(Side-by-Side)的含義

  VS 2010可以和Visual Studio的早期版本并列(side by side)安裝。這意味著,你可以在安裝了VS 2008/VS 2005/VS 2003的同個(gè)機(jī)器上安裝VS 2010,如果你想要的話,可以同時(shí)使用所有這些版本。

  .NET 4.0也可以和.NET的早期版本并列(side by side)安裝在同個(gè)機(jī)器上。.NET 4.0給了框架類庫(kù)和CLR引擎新的版本號(hào)碼,這意味著,它可以完全獨(dú)立于.NET 2.0, 3.0 和 3.5運(yùn)行。這意味著,你可以在安裝了.NET 2.0/3.0/3.5的機(jī)器上安裝 .NET 4.0, 配置某些應(yīng)用使用.NET 4.0來(lái)運(yùn)行,其他應(yīng)用使用老一點(diǎn)的.NET版本來(lái)運(yùn)行(IIS管理器工具允許你配置一個(gè)ASP.NET應(yīng)用所使用的.NET版本)。這允許你將.NET 4.0用于新的應(yīng)用,而沒(méi)有必要測(cè)試和升級(jí)所有現(xiàn)有的應(yīng)用

  VS 2008的多定向支持

  VS 2008是第一個(gè)包含.NET多定向支持的Visual Studio版本,這意味著,你不光可以使用VS 2008創(chuàng)建和編輯.NET 3.5 項(xiàng)目,也可以創(chuàng)建和編輯.NET 3.0 和 .NET 2.0項(xiàng)目。這允許開(kāi)發(fā)人員更快地升級(jí)和充分利用新的Visual Studio工具特性,而不必要求在運(yùn)行他們應(yīng)用的客戶機(jī)和生產(chǎn)性服務(wù)器端安裝新一點(diǎn)的.NET 版本。

  VS 2008的多定向支持利用了.NET 2.0, .NET 3.0, 和 .NET 3.5都是在同個(gè)版本的CLR之上運(yùn)行的這個(gè)事實(shí),而這三個(gè).NET 版本的主要區(qū)別在于它們的框架類庫(kù)。結(jié)果是,Visual Studio的編譯器能夠生成同樣的IL輸出,調(diào)試器能夠針對(duì)同個(gè)CLR引擎進(jìn)行調(diào)試,IDE對(duì)多定向的支持主要著重于過(guò)濾掉不支持某個(gè)給定.NET 版本的新的程序集和項(xiàng)目模板的的顯示。

  這個(gè)多定向體驗(yàn)是可行的,盡管不完美。VS 2008中的Intellisense總是顯示.NET 3.5版本的框架類庫(kù)的類型和成員(即使你定向的是.NET 2.0)。這意味著,你有時(shí)候會(huì)在無(wú)意中使用一個(gè)ASP.NET 3.5才有的方法,盡管你是在開(kāi)發(fā)一個(gè)ASP.NET 2.0 項(xiàng)目。

  VS 2010的多定向支持

  我們?cè)赩S 2010中做了一些非常重大的架構(gòu)級(jí)改動(dòng),來(lái)促成更好和更精確的多定向支持。

  VS 2010現(xiàn)在給每一個(gè).NET版本都配置了我們稱之為“引用程序集(reference assemblies)”的東西。“引用程序集”只包含某個(gè)特定框架程序集的元數(shù)據(jù),而不是它的實(shí)現(xiàn)(因此所占硬盤(pán)極小)。但這個(gè)元數(shù)據(jù)足夠確保VS 2010總是能夠在定向某個(gè).NET 框架版本時(shí)提供百分之百精確的intellisense。這還意味著,通過(guò)設(shè)計(jì)器中屬性表格呈示的屬性,對(duì)象瀏覽器中的API列表,以及IDE中所有其它各種地方都能精確地顯示出確切版本的API簽名。

  我們還更新了VS 2010調(diào)試器,profiler和編譯器,使之能夠定向多個(gè)CLR版本。

  使用VS 2010的多定向支持

  為更好地理解這些新的多定向特性的工作原理,讓我們用VS 2010來(lái)創(chuàng)建一個(gè)新的ASP.NET Web應(yīng)用。我們先用 “文件->新項(xiàng)目”菜單命令調(diào)出“新項(xiàng)目”對(duì)話框,使用對(duì)話框頂部的版本下拉框過(guò)濾項(xiàng)目模板,使之只顯示.NET 2.0所支持的模板,然后創(chuàng)建一個(gè)新的ASP.NET 2.0 web應(yīng)用項(xiàng)目:


  因?yàn)檫@個(gè)項(xiàng)目定向的是.NET 2.0,VS 2010 會(huì)自動(dòng)對(duì)工具箱和標(biāo)識(shí)intellisense進(jìn)行過(guò)濾,只允許我們使用那些隨ASP.NET 2.0發(fā)布的控件。不象VS 2008,VS 2010中的屬性表格現(xiàn)在自動(dòng)過(guò)濾,只顯示那些ASP.NET 2.0按鈕控件所支持的屬性:

step2

  在編寫(xiě)代碼時(shí),VS 2010現(xiàn)在也只顯示.NET 2.0所支持的那些類型和方法/屬性/事件的代碼intellisense。在下面,在鍵入“Response.Re”時(shí),你可以看到ASP.NET 2.0 “Response”對(duì)象的intellisense:

  在使用內(nèi)置的VS web服務(wù)器運(yùn)行應(yīng)用時(shí),它會(huì)使用 ASP.NET 2.0版本來(lái)運(yùn)行(VS 2010調(diào)試器調(diào)試的是CLR 2.0進(jìn)程):

  將項(xiàng)目從.NET 2.0 移植到.NET 4.0

  或者,我們也可以在解決方案管理器中右擊項(xiàng)目,調(diào)出它的屬性對(duì)話框,來(lái)將項(xiàng)目重新定向,使之在.NET后期版本下工作。我們可以選擇對(duì)話框上的“定向框架(target framework)”下拉框,選擇我們想要定向的.NET框架版本:

  我們可以從上面的各種不同的.NET版本中任選一個(gè)。該列表中包括了一個(gè)"Server Core(服務(wù)器核心)” profile,支持無(wú)界面的Windows Server 2008 R2版本,它不支持某些APIs。因?yàn)槲覀冇糜谠獢?shù)據(jù)和intellisense的引用程序集能夠支持任意一個(gè)版本,如果它們引進(jìn)任何新的API的話,我們甚至能夠在將來(lái)的服務(wù)包中發(fā)布它們的版本,以促成百分之百的精確性。

  在這個(gè)示范中,我們將選擇把項(xiàng)目移植到.NET 4.0,完畢后,VS 2010將自動(dòng)地更新項(xiàng)目的引用程序集,以及項(xiàng)目的web.config文件來(lái)適當(dāng)反映出所用的新版本。

  做完這一步后,VS 2010 會(huì)過(guò)濾工具箱和標(biāo)識(shí)intellisense,顯示ASP.NET 4.0版本中所有新的控件和屬性。 例如,下面的屬性表格現(xiàn)在顯示了新的“ClientIDMode”屬性,該屬性是ASP.NET 4.0中所有控件都有的,它能讓你控制客戶端ID是如何輸出的,以避免丑陋的客戶端id(這是ASP.NET 4.0中的一個(gè)新特性,我會(huì)在以后的博客中討論):

  至此,我們將項(xiàng)目升級(jí)到使用.NET 4.0,VS 2010現(xiàn)在也會(huì)顯示.NET 4.0中的新的類型和類型中的方法/屬性/事件的代碼intellisense。例如,在下面,你可以看到 ASP.NET 4.0 “Response” 對(duì)象上的一些新的redirect方法(是在前面項(xiàng)目定向.NET 2.0時(shí)沒(méi)有出現(xiàn)的):

  上面新的Response.RedirectPermanent()方法方便了發(fā)出“HTTP 301 Moved”回復(fù),該回復(fù)可以避免你的網(wǎng)站在搜索引擎中積存失效的鏈接。URL導(dǎo)向引擎現(xiàn)在也同時(shí)為基于ASP.NET Web Forms 和 ASP.NET MVC的應(yīng)用所支持,新的Response.RedirectToRoute()方法允許你輕松地重新定向到在其中聲明的路徑。

  最后,在我們使用內(nèi)置的VS web服務(wù)器運(yùn)行應(yīng)用時(shí),VS 2010現(xiàn)在會(huì)使用ASP.NET 4.0版本來(lái)運(yùn)行這個(gè)應(yīng)用

  結(jié)束語(yǔ)

  VS 2010的多定向支持允許你開(kāi)發(fā)定向 .NET 4.0, .NET 3.5, .NET 3.0 和 .NET 2.0的項(xiàng)目。它允許你開(kāi)始利用新的工具特性,而不必馬上將運(yùn)行你應(yīng)用的客戶機(jī)和服務(wù)器升級(jí)到.NET 4.0。這改進(jìn)了的多定向支持將確保其體驗(yàn)比以前更好,更精確。

  希望本文對(duì)你有所幫助,

  Scott

NET技術(shù)VS 2010 和 .NET 4.0 系列之《多定向支持》篇,轉(zhuǎn)載需保留來(lái)源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 无码国产成人午夜在线观看不卡 | 久久AV国产麻豆HD真实乱 | 久久久久九九 | 洲精品无码高潮喷水A片 | 亚洲一卡二卡三卡四卡无卡麻豆 | 久久这里只有热精品18 | 涩里番app黄版网站 色综合伊人色综合网站中国 | 国产剧情在线精品视频不卡 | 99久久国产露脸国语对白 | YELLOW高清在线观看2019 | 国产99久久| 久久久久久久99精品免费观看 | 亚洲日产2020乱码草莓毕 | 色噜噜视频影院 | 国产精品久久久久久52AVAV | 无码成人AAAAA毛片含羞草 | 一个人免费观看在线视频播放 | 97人妻在线公开视频在线观看 | 久久久久国产精品美女毛片 | 2021国产精品视频一区 | 国产1769一七六九视频在线 | 美女脱光app| 亚洲黄视频在线观看 | 国产SUV精品一区二区69 | 2020久久精品永久免费 | 国产精品欧美久久久久天天影视 | 新新电影理论中文字幕 | 美女动态图真人后进式 | 少妇精品无码一区二区三区 | 人人模人人干 | 国产AV电影区二区三区曰曰骚网 | 精品动漫国产亚洲AV在线观看 | 美女诱惑性感揉胸 | 亚洲成年人免费网站 | 老牛天天晚上夜噜噜噜 | 幼儿交1300部一区二区 | 挺弄抽插喷射HH | 国产午夜精品一区二区理论影院 | 无码国产成人午夜在线观看不卡 | 欧美高清videosgratis高 | 在线中文高清资源免费观看 |