溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Visual Studio2010及.Net4的新功能有哪些

發(fā)布時間:2022-03-31 14:18:24 來源:億速云 閱讀:212 作者:iii 欄目:編程語言

這篇“Visual Studio2010及.Net4的新功能有哪些”文章的知識點大部分人都不太理解,所以小編給大家總結(jié)了以下內(nèi)容,內(nèi)容詳細,步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“Visual Studio2010及.Net4的新功能有哪些”文章吧。

1、代碼片段(Code Snippets):

代碼段是預先開發(fā)的代碼模板,可以節(jié)省我們對有關(guān)語法思考的時間。在Visual Studio 2005和Visual Studio 2008中,已經(jīng)有建立了很多代碼段。不過,這些只適用于隱藏代碼(code behind)。在Visual Studio 2010中代碼片段支持JavaScript,HTML以及ASP.NET標記。在下面畫面,展示了JavaScript和HTML片段的快捷菜單。

在JavaScript中:

Visual Studio2010及.Net4的新功能有哪些

在Html中:

Visual Studio2010及.Net4的新功能有哪些

2、New Profiles:

在以前的dotnet版本中,我們已經(jīng)看到過不同的開發(fā)環(huán)境的配置。如 VB, C#, Web development 和General Development。我們根據(jù)自己的需要選擇一個環(huán)境配置。這些選擇將在第一次安裝visual studio之后或者通過import export選項。這里介紹兩個Visual Studio 2010中配置環(huán)境,兩個都是進行HTML開發(fā)的。他們是:

Visual Studio2010及.Net4的新功能有哪些

◆Web Development。
◆Web Development (Code Optimized)。
◆Web Development,配置隱藏了客戶對象和HTML Mode頂端的事件欄。
◆Code Optimized ,你將發(fā)現(xiàn)是沒有code, designer tabs的html 編輯器。
◆它提供了一個更大的空間去玩轉(zhuǎn)html。

Visual Studio2010及.Net4的新功能有哪些

Visual Studio2010及.Net4的新功能有哪些

在你安裝Visual Studio之后,第一次使用的時候,你能選擇一個配置。 你也能改變你的工作環(huán)境的配置通過: Tools > Import & Export Settings > Reset all settings option。 如果在IDE中沒有什么改變,你必須通過重新打開Visual Studio使它生效。

3、Generate From Usage:

在ASP.NET以前的版本,微軟推出了從現(xiàn)有的代碼中進行代碼重構(gòu)來生成方法,在ASP.NET 4.0中, Generate From Usage 有了新概念,能基于現(xiàn)有的代碼來生成屬性,方法,類和的其它類型。

寫一些代碼,選中它,右擊最右側(cè)的字符,你將得到去提取屬性和方法的選項。此選項僅當你沒有定義過這個標識符才顯示。對于下面的例子智能感應(yīng)不會顯示選項來提取屬性,例如,如果您右鍵點擊變量i。

Visual Studio2010及.Net4的新功能有哪些

4、Multi-Targeting:

在Visual Studio 2008中就能創(chuàng)建一個2.0或者3.0版本創(chuàng)建項目,而不是用默認的3.5去開發(fā)。也是是說,有一個選擇項去改變開發(fā)項目的framework版本。在Visual Studio 2010中亦有相同選項功能,并做出相應(yīng)的提高。在以前的版本中,如果你使用framework 2.0創(chuàng)建一個項目。智能感仍將能顯示3.5版本的類型和成員。如果你不能確定所選擇的framework內(nèi)的成員,所以你就會有更多的機會去出錯。但是,在Visual Studio 2010的智能感知會只向您顯示你選擇的framework 版本。

5、MultiMonitor:

Visual Studio 2010給我們提供能將IDE的窗體移動visual studio IDE之外,將它放至在桌面上。它還支持多面去地去看不同的IDE窗體。如果我們關(guān)閉Visual Studio,并再次打開它,我們會發(fā)現(xiàn)所有的窗體在我們最后一次放置的地方。

Visual Studio2010及.Net4的新功能有哪些

6、Code Navigation:

新的導航使我們在文件中更快搜索術(shù)語。但它只能即在App_Code文件夾類文件,搜索您鍵入文本。它不適用于HTML或代碼隱藏文件。在下面的例子,它顯示出我的鍵入函數(shù)名稱,它導航到窗口,選擇窗體中的任何一個,它將能定位到選擇的函數(shù)定義。

Visual Studio2010及.Net4的新功能有哪些

7、View Call Hierarchy:

這有助于查看函數(shù)和屬性的使用,例如,如果你在一個函數(shù)名右鍵,它會告訴你的函數(shù)使用分層列表。如果您單擊查看調(diào)用層次,它會顯示一個窗體,告訴你詳細的函數(shù)調(diào)用:在層次結(jié)構(gòu)中選擇窗口函數(shù)調(diào)用它會顯示的參數(shù)和函數(shù)調(diào)用的位置的詳細信息。

Visual Studio2010及.Net4的新功能有哪些

8、代碼高亮突出顯示:

選擇一個標識符,IDE會為你突出的被使用的地方。例如我選擇變量i,在它不同的使用地方,突出的顯示。

Visual Studio2010及.Net4的新功能有哪些

9、智能提示的改進:

在Visual Studio 2008中,為一個對象選擇屬性時,它將根據(jù)輸入的字母的順序排列,為你提供智能提示。在Visual Studio 2010中它將向你顯示基于組的屬性,例如,如果您的文本框?qū)ο蠛箧I入text, 它將向你顯示Text, TextChanged, TextMode。它也支持Pascal的智能提示。例如,你輸入TC,它將導航TextChanged成員。

在下面的圖片中可以看到4.0版本的ClientIDMode屬性:如果我們從項目屬性上改變framework版本。它不會顯示這個文本框的這個屬性。

10、EnablePersistedSelection:

當我們選擇像datalist 或者gridview 控件中的一行時,如果我們移動到另一個網(wǎng)頁,在新的頁上,它選擇同編號行,雖然我們只在第一頁選擇了它。為了避免這個,ASP.NET 4.0為這些控件推出了一種新的屬性,這是EnablePersistedSelection。如果設(shè)置為true,在其他網(wǎng)頁中,將不能選擇同一編號。例如,導航到原始網(wǎng)頁,第一頁將顯示選定的最初選定的行。

11、Web.Config Transformation

通常為我們的開發(fā)環(huán)境需要在web.config中設(shè)置一些值,然后在部署或測試的時候,我們手工地改變這些值。例如,如果我們在Web.config文件中有連接字符串或其他任何鍵值組合,在項目發(fā)布或部署的時候,我們要去替換他們,這里我們將使用新的術(shù)語:Web.Config Transformation。這是一種自動的方式來執(zhí)行此操作。Web.config 設(shè)置能被其他的配置文件覆蓋,如:web.release.config,web.debug.config 等等,在項目debug和release時候。

這些值不會覆蓋原web.config,但會在發(fā)布的web.config中。有了transformation的幫助,我們可以替換,移除,刪除一個節(jié)點和我們可以刪除或設(shè)置節(jié)點自身的屬性。例如:

1、創(chuàng)建一個配置文件,從configuration manager > New。

2、將其命名為 TransformWebConfig。從copy setting from 選項中選擇Release。這將會創(chuàng)建TransformWebConfig.config。

3、右擊web.config,選擇'Add config Transfroms ’選項。打開Web.config并添加一個測試鍵和值。

<appSettings>   <add key="KeyOne" value="A value"/>   </appSettings>

4、打開TransformWebConfig.config,并添加下面一行。

<appSettings>   <add key="KeyOne" value="TestOnConfigurationConfig" xdt:Transform="Replace" xdt:Locator="Match(key)" />   </appSettings>

5、右擊項目,選擇'Create Package&rsquo;。 VS會從TransformWebConfig.config文件獲取值,它將改變我們發(fā)布的web.config文件中的值。在成功生成的OBJ文件夾中,檢查TransformWebConfig文件夾下的web.config,您會看到關(guān)鍵字KeyOne的值為TestOnConfigurationConfig。

12、URL Routing:

現(xiàn)在,我們看到網(wǎng)站的URL是更具體的SEO。不顯示任何描述性信息,在ASP.NET 2.0的URL映射為我們提供了一個選項,在一定程度上實現(xiàn)此功能。我們可以提供確切的網(wǎng)址導航和URL顯示給用戶。Url routing在ASP.NET 3.5中引入。開發(fā)者創(chuàng)建不同的route處理類取決于網(wǎng)站url routings的數(shù)量。由于有url routing選項,回發(fā)的問題能被解決。

在ASP.NET 4.0中你不需要為每個單獨的處理程序類來定義routing。建立一個輔助函數(shù)MapPageRoute,幫助您實現(xiàn)更快速的routing。這些routes在Application_Start中注冊。對于這個在Global.asax SetRouting方法的示例中設(shè)置routing,第一個參數(shù)是routing的友好名稱,第二個參數(shù)是檢查URL進行模式匹配,第三個是在aspx頁將這一功能為用戶實施。Global.asax中是:

protected void Application_Start(object sender, EventArgs e)   {   SetRouting(System.Web.Routing.RouteTable.Routes);   }   private void SetRouting(System.Web.Routing.RouteCollection routeCollection)   {   routeCollection.MapPageRoute("RouteFriendlyName", "MyWebsite/RequestParameterName",  "~/Book.aspx");   // you can add other page routes with different names and combinations here   }

現(xiàn)在Book.aspx將使用下面的代碼進行進一步處理。

string Parameter = Page.RouteData.Values["RequestParameterName"].ToString();   if (Parameter==”Chemistry”){....}   else if (Parameter==”Physics”){....}

現(xiàn)在,如果條件滿足,如果我們將首先瀏覽到localhost / MyWebsite /Chemistry 。

13、Add Reference Dialog:

Visual Studio2010及.Net4的新功能有哪些

在Visual Studio以前的版本中,當打開reference dialog box時,這將需要一些時間來加載.NET程序集文件開始直到它加載從GAC中所有引用。在默認情況下打開項目選項卡,在Visual Studio 2010上添加引用。如果你錯誤地點擊.Net或COM選項卡,你還有一個是取消的所有程序集加載的選項。因此,Visual Studio IDE的并不像以前凍結(jié)。

14、Compressing Session Values:

ASP.NET session外的進程的狀態(tài)值保存在數(shù)據(jù)庫或服務(wù)器上。這些都是以序列化格式保存。發(fā)送到服務(wù)器時候,更多更大的session將消耗更多的資源 。現(xiàn)在,這些可以被壓縮在一個新的構(gòu)建compressionEnabled屬性中。這種對sessionState元素屬性,可以在web.config這樣被聲明。

<sessionState mode="SQLServer" stateConnectionString="connectionstring goes here"   compressionEnabled="true"/>

此選項將用于session外的進程。

15、Dynamic lookup:  

有一個新的靜態(tài)類型:dynamic。我們可以使用它作為任何對象的類型。如果有任何關(guān)于它的用法,我們能在運行時,得到它的錯誤。例如:

dynamic integerValue = 1;   dynamic stringValue = " a string";   dynamic Result = integerValue + stringValue;

輸出這將是:字符串 1。但是如果你改變最后一行:

dynamic Result = integerValue & stringValue;

你不會得到任何下面的編譯錯誤,在運行時,你會得到下面的錯誤。

Operator '&' cannot be applied to operands of type 'int' and 'string'

16、Optional Parameters

在ASP.NET 4之前,為了實現(xiàn)可選的參數(shù),我們創(chuàng)建重載函數(shù)。但現(xiàn)在在C#中,可選參數(shù)沒有更多的限制。但是象VB的可選參數(shù)必須放置到最后。例如:

public void FunctionOptionalParam(string Name, int Age, string Country = "")

我們可以不提要求的可選參數(shù)的值。

FunctionOptionalParam("My Full Name",20);


17、Named Parameters:

命名的參數(shù)可以忽略的參數(shù)順序,在不同順序的使用帶名稱的參數(shù)。例如:

public void FunctionNamedParam(int x, int y , int z)

在函數(shù)調(diào)用將是:

FunctionNamedParam(x:1, z:3, y:2);

在函數(shù)聲明的順序之前,雖然我們?yōu)閰?shù)設(shè)置了Z的值,但這些仍然等同于x = 1,&yacute; = 2,z=3。

18、Meta Tags:

HtmlMeta類可用于動態(tài)添加HTML meta的標簽和HTMLMeta的名稱,內(nèi)容屬性可以被用來在運行時動態(tài)添加任何繼標記名稱和它的值。在ASP.NET 4.0 Page類中有兩個屬性MetaDescription和MetaKeywords。這些可以用來在運行時在html中為description和keyword元素添加meta的值。這些可以在HTML中提及頁面屬性或以這種方式:

Page.MetaDescription = "this is meta description";  Page.MetaKeywords = "this is a meta keyword";

如果這樣我們看到這樣的HTML生成:

<head> <meta name="description" content="this is meta description " /> <meta name="keywords" content="this is a meta keyword" /> </head>

19、Generating Client IDs:

web控件的客戶端ID是根據(jù)父控件ID動態(tài)的產(chǎn)生。 所以,如果你在一個用戶控件中使用textbox,我們必須查看為它生產(chǎn)什么樣ID,才能在客戶端的腳本中直接使用。有時這些是動態(tài)的改變用戶控件的名稱也更改它的子控件ID。在ASP.NET 4.0中,這個問題是可以由頁面的ClientIDMode屬性解決。它有如下可能的值:AutoID , Static, Predictable 和Inherit。

AutoID: 是webpage 的默認值,功能和以前ASP.NET的版本一樣。

Static: 為控件設(shè)置一個靜態(tài)的ID,所以我們不需要當心父控件的ID,我們也能使用javascript引用它。例如一個用戶控件里面的textbox ,它外面胡一個ClientIDMode設(shè)置為static。

<asp:TextBox ID="textbox1" runat="server" clientIDMode="Static"></asp:TextBox>   <uc1:WebUserControl ID="WebUserControl1" runat="server" />

這個用戶控件包含了textbox2:

<asp:TextBox ID="TextBox2" ClientIDMode="Static" runat="server"></asp:TextBox>

這個代碼將產(chǎn)生下面的HTML:

<input name="ctl00$MainContent$textbox1" type="text" id="textbox1" />   <input name="ctl00$MainContent$WebUserControl1$TextBox2" type="text" id="TextBox2" />

如果我們移除ClientIDMode="static" ,輸出胡HTML將會是:

<input name="ctl00$MainContent$textbox1" type="text" id="MainContent_textbox1" />

它將產(chǎn)生象以前ASP.NET版本的textbox的ID。

Predictable:如果gridview 或者listview控件中我們設(shè)置ClientIDMode的值為Predictable,它將會串連控件ID和Gridview的ID,column的值在ClientIDRowSuffiex屬性上提到:

Gridview ID ="GridView1" ClientIDMode="Predictable" ClientIDRowSuffix="ItemID"

如果在gridview的模板列中的有一個ID為Label1的label控件 ,它被綁定在ItemID列上。它的ID將會是:ID= GridView1_Label1_200。如果我們用數(shù)據(jù)綁定控件之外使用web控件,設(shè)置ClientIDMode等于Predictable:

<asp:TextBox ID="TextBox1" runat="server" ClientIDMode="Predictable"></asp:TextBox> <asp:Panel ID="panel1" runat="server"> <asp:TextBox ID="TextBox2" runat="server" ClientIDMode="Predictable"></asp:TextBox>   </asp:Panel>

你可以看到webcontrols在一個面板輸出和另外一個再面板以外輸出。

<input name="ctl00$MainContent$TextBox1" type="text" id="MainContent_TextBox1" /> <div id="MainContent_panel1"> <input name="ctl00$MainContent$TextBox1" type="text" id="MainContent_TextBox1" /> </div>

它將產(chǎn)生所有web控件的ID,是panel的頁面的ID加上子控件的ID。Inherit: WEB控件默認是繼承父容器的ID。 控件能覆蓋它父控件的屬性。所以我能為ClientModeID設(shè)置不同的值。

20、Permanent Redirect :

在有些情況下,如果當前頁面已經(jīng)過時,我們希望將用戶重定向到新開發(fā)的網(wǎng)頁。 我們可以使用Response.Redirect轉(zhuǎn)移頁到新的頁面。但是,在這種情況下,搜索引擎保存搜索索引的網(wǎng)頁的舊信息。 另外,如果用戶瀏覽到這個網(wǎng)頁,他將被重定向到這個網(wǎng)頁,然后用命令的response.redriect幫助新打開的一頁。

但在ASP.NET 4.0中一個新的命令Response.RedirectPermanent可用于更改服務(wù)器頁上的頭信息。因此,如果用戶去為他直接重定向到新的一頁,并為他節(jié)省了雙行頁面。在該網(wǎng)站和網(wǎng)頁更新的發(fā)現(xiàn)頭和更新其索引信息,展示最新的信息重新搜索索引同樣的搜索引擎。

21、New Browser Definitions:

在ASP.net 3.5近幾年,一些瀏覽器已經(jīng)更新,其中包括Google chrome和那些支持blackberry智能手機。 ASP.Net 4.0的HttpBrowserCapabilities類被更新符合支持新瀏覽器。

22、Package/Publish :

Visual Studio2010及.Net4的新功能有哪些

Package/Publish提供設(shè)置 publish和package命令。配置調(diào)試選項,像以前的版本一樣,Publish提供設(shè)置編譯和生成的選項。如果托管服務(wù)器上沒有SQL Express或如果您不希望包含發(fā)布的文件,然后選擇從App_Data文件夾中排除的那些文件。如果您選擇選項創(chuàng)建一個的Web包像ZIP文件,它會創(chuàng)建一個部署的zip文件。否則,將是默認解壓縮的文件夾。

默認情況下,程序包在應(yīng)用程序的OBJ文件夾下創(chuàng)建。默認它不會在解決方案瀏覽器中顯示,直到您選擇顯示所有文件選項。我們還可以設(shè)置服務(wù)器Web應(yīng)用程序名稱以及目標服務(wù)器的物理路徑。

Visual Studio2010及.Net4的新功能有哪些

23、Deploy SQL :

部署SQL選項,允許您設(shè)置將連接字符串作為部署的一部分。您可以使用不同的名稱和值手動添加連接字符串,或按一下import按鈕從web.config導出。你可以僅僅選擇模式腳本或數(shù)據(jù)庫選項。在一個連接字符串顯示源設(shè)置,我們可以為設(shè)置目標服務(wù)器的值。您還可以手動添加數(shù)據(jù)庫腳本文件,通過點擊添加按鈕。您還可以更改SQL文件,以便在服務(wù)器上運行。

Visual Studio2010及.Net4的新功能有哪些

以上就是關(guān)于“Visual Studio2010及.Net4的新功能有哪些”這篇文章的內(nèi)容,相信大家都有了一定的了解,希望小編分享的內(nèi)容對大家有幫助,若想了解更多相關(guān)的知識內(nèi)容,請關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI