仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1855|回复: 8
打印 上一主题 下一主题

[学习教程] 来一篇关于NET的详解Visual Studio 2010中ASP.NET新增23项功效

[复制链接]
若天明 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 14:26:35 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
数据库有很多应用领域,但是如果你单单学数据库的话基本上做数据库管理员比较合适而已,跟领域结合的你还得再学习那些领域知识。(其实数据挖掘我真是不懂,本来这学期开了一门课了。在这里我们将先容的是VisualStudio2010里新增的23项关于ASP.NET的新功效,但愿对人人有所匡助。
1、代码片断(CodeSnippets):
代码段是事后开辟的代码模板,能够节俭我们对有关语法思索的工夫。在VS2005和VS2008中,已有创建了良多代码段。不外,这些只合用于埋没代码(codebehind)。在VS2010中代码片断撑持JScript,HTML和asp.net标志。鄙人面画面,展现了JScript和HTML片断的快速菜单。
在JS中:

在Html中:

2、NewProfiles:
在之前的dotnet版本中,我们已看到过分歧的开辟情况的设置。如VB,C#,Webdevelopment和GeneralDevelopment。我们依据本人的必要选择一个情况设置。这些选择将在第一次安装visualstudio以后大概经由过程importexport选项。

这里先容两个VS2010中设置情况,两个都是举行HTML开辟的。他们是
WebDevelopment
WebDevelopment(CodeOptimized)
WebDevelopment,设置埋没了客户工具和HTMLMode顶真个事务栏。

CodeOptimized,你将发明是没有code,designertabs的html编纂器。它供应了一个更年夜的空间往玩转html。

在你安装visualstudio以后,第一次利用的时分,你能选择一个设置。你也能改动你的事情情况的设置经由过程:Tools>Import&ExportSettings>Resetallsettingsoption。假如在IDE中没有甚么改动,你必需经由过程从头翻开visualstudio使它失效。
3、GenerateFromUsage:
在ASP.Net之前的版本,微软推出了从现有的代码中举行代码重构来天生办法,在InASP.NET4.0中,GenerateFromUsage有了新观点,能基于现有的代码来天生属性,办法,类和的别的范例。写一些代码,选中它,右击最右边的字符,你将失掉往提取属性和办法的选项。此选项仅当你没有界说过这个标识符才显现。关于上面的例子智能感到不会显现选项来提取属性,比方,假如您右键点击变量i。

4、Multi-Targeting:
在2008中就可以创立一个2.0大概3.0版本创立项目,而不是用默许的3.5往开辟。也是是说,有一个选择项往改动开辟项目标framework版本。
在2010中亦有不异选项功效,并做出响应的进步。在之前的版本中,假如你利用framework2.0创立一个项目。智能感仍将能显现3.5版本的范例和成员。假如你不克不及断定所选择的framework内的成员,以是你就会有更多的时机往堕落。可是,在VS2010的智能感知会只向您显现你选择的framework版本。
5、MultiMonitor:
VisualStudio2010给我们供应能将IDE的窗体挪动visualstudioIDE以外,将它放至在桌面上。它还撑持多面往地往看分歧的IDE窗体。假如我们封闭VisualStudio,并再次翻开它,我们会发明一切的窗体在我们最初一次安排的中央。

6、CodeNavigation:
新的导航使我们在文件中更快搜刮术语。但它只能即在App_Code文件夹类文件,搜刮您键进文本。它不合用于HTML或代码埋没文件。鄙人面的例子,它显现出我的键进函数称号,它导航到窗口,选择窗体中的任何一个,它将能定位到选择的函数界说。

7、ViewCallHierarchy:
这有助于检察函数和属性的利用,比方,假如你在一个函数名右键,它会告知你的函数利用分层列表。

假如您单击检察挪用条理,它会显现一个窗体,告知你具体的函数挪用:

在条理布局当选择窗口函数挪用它会显现的参数和函数挪用的地位的具体信息。

8、代码高亮凸起显现:
选择一个标识符,IDE会为你凸起的被利用的中央。比方我选择变量i,在它分歧的利用中央,凸起的显现。

9、智能提醒的改善:
在VS2008中,为一个工具选择属性时,它将依据输出的字母的按次分列,为你供应智能提醒。
在VS2010中它将向你显现基于组的属性,比方,假如您的文本框工具后键进text,它将向你显现Text,TextChanged,TextMode。它也撑持Pascal的智能提醒。比方,你输出TC,它将导航TextChanged成员。

鄙人面的图片中能够看到4.0版本的ClientIDMode属性:假如我们从项目属性上改动framework版本。它不会显现这个文本框的这个属性。

10、EnablePersistedSelection:
当我们选择像datalist大概gridview控件中的一行时,假如我们挪动到另外一个网页,在新的页上,它选择同编号行,固然我们只在第一页选择了它。
为了不这个,ASP.Net4.0为这些控件推出了一种新的属性,这是EnablePersistedSelection。假如设置为true,在其他网页中,将不克不及选择统一编号。比方,导航到原始网页,第一页将显现选定的最后选定的行。
11、Web.ConfigTransformation
一般为我们的开辟情况必要在web.config中设置一些值,然后在部署或测试的时分,我们手工地改动这些值。
比方,假如我们在Web.config文件中有毗连字符串或其他任何键值组合,在项目公布或部署的时分,我们要往交换他们,这里我们将利用新的术语:Web.ConfigTransformation。这是一种主动的体例来实行此操纵。Web.config设置能被其他的设置文件掩盖,如:web.release.config,web.debug.config等等,在项目debug和release时分。这些值不会掩盖原web.config,但会在公布的web.config中。
有了transformation的匡助,我们能够交换,移除,删除一个节点和我们能够删除或设置节点本身的属性。比方:
1、创立一个设置文件,从configurationmanager>New

2、将其定名为TransformWebConfig。从copysettingfrom选项当选择Release。

这将会创立TransformWebConfig.config。

3、右击web.config,选择AddconfigTransfroms’选项。翻开Web.config并增加一个测试键和值。
<appSettings>
<addkey="KeyOne"value="Avalue"/>
</appSettings>
4、翻开TransformWebConfig.config,并增加上面一行。
<appSettings>
<addkey="KeyOne"value="TestOnConfigurationConfig"xdt:Transform="Replace"
xdt:Locator="Match(key)"/>
</appSettings>
5、右击项目,选择CreatePackage’。VS会从TransformWebConfig.config文件猎取值,它将改动我们公布的web.config文件中的值。
在乐成天生的OBJ文件夹中,反省TransformWebConfig文件夹下的web.config,您会看到关头字KeyOne的值为TestOnConfigurationConfig。
12、URLRouting:
如今,我们看到网站的URL是更详细的SEO。不显现任何形貌性信息,比方,不是显现网址:http://mywebsite.com/userprofiles.aspx?userid=1,开辟者更乐意显现:http://mywebsite.com/mydetails。在asp.net2.0的URL映照为我们供应了一个选项,在必定水平上完成此功效。我们能够供应切实的网址导航和URL显现给用户。
Urlrouting在asp.net3.5中引进。开辟者创立分歧的route处置类取决于网站urlroutings的数目。因为有urlrouting选项,回发的成绩能被办理。
在asp.net4.0中你不必要为每一个独自的处置程序类来界说routing。创建一个帮助函数MapPageRoute,匡助您完成更疾速的routing。这些routes在Application_Start中注册。关于这个在Global.asaxSetRouting办法的示例中设置routing,第一个参数是routing的友爱称号,第二个参数是反省URL举行形式婚配,第三个是在aspx页将这一功效为用户实行。
Global.asax中是:
如今Book.aspx将利用上面的代码举行进一步处置。
stringParameter=Page.RouteData.Values["RequestParameterName"].ToString();
if(Parameter==”Chemistry”){....}
elseif(Parameter==”Physics”){....}
如今,假如前提满意,假如我们将起首扫瞄到localhost/MyWebsite/Chemistry。
13、AddReferenceDialog:
在VisualStudio之前的版本中,当翻开referencedialogbox时,这将必要一些工夫来加载.NET程序集文件入手下手直到它加载从GAC中一切援用。在默许情形下翻开项目选项卡,在VS2010上增加援用。

假如你毛病地址击.Net或COM选项卡,你另有一个是作废的一切程序集加载的选项。因而,VSIDE的其实不像之前解冻。
14、CompressingSessionValues
ASP.NETsession外的历程的形态值保留在数据库或服务器上。这些都是以序列化格局保留。发送到服务器时分,更多更年夜的session将损耗更多的资本。如今,这些能够被紧缩在一个新的构建compressionEnabled属性中。这类对sessionState元素属性,能够在web.config如许被声明。
<sessionState
mode="SQLServer"stateConnectionString="connectionstringgoeshere"
compressionEnabled="true"/>
此选项将用于session外的历程。
15、Dynamiclookup:
有一个新的静态范例,dynamic。我们可使用它作为任何工具的范例。假如有任何干于它的用法,我们能在运转时,失掉它的毛病。比方:输入这将是:字符串1。
dynamicintegerValue=1;
dynamicstringValue="astring";
dynamicResult=integerValue+stringValue;
可是假如你改动最初一行
dynamicResult=integerValue&stringValue;
你不会失掉任何上面的编译毛病,在运转时,你会失掉上面的毛病。
Operator&cannotbeappliedtooperandsoftypeintandstring
16、OptionalParameters
在asp.net4.0之前,为了完成可选的参数,我们创立重载函数。但如今在C#中,可选参数没有更多的限定。可是象VB的可选参数必需安排到最初。比方:
publicvoidFunctionOptionalParam(stringName,intAge,stringCountry="")
我们能够不提纲求的可选参数的值。
FunctionOptionalParam("MyFullName",20);
17、NamedParameters:
定名的参数能够疏忽的参数按次,在分歧按次的利用带称号的参数。比方:
publicvoidFunctionNamedParam(intx,inty,intz)
在函数挪用将是:
FunctionNamedParam(x:1,z:3,y:2);
在函数声明的按次之前,固然我们为参数设置了Z的值,但这些仍旧同等于x=1,y=2,z=3。
18、MetaTags:
HtmlMeta类可用于静态增加HTMLmeta的标签和HTMLMeta的称号,内容属性能够被用来在运转时静态增加任何继标志称号和它的值。
在asp.net4.0Page类中有两个属性MetaDescription和MetaKeywords。这些能够用来在运转时在html中为description和keyword元素增加meta的值。这些能够在HTML中说起页面属性或以这类体例:
Page.MetaDescription="thisismetadescription";
Page.MetaKeywords="thisisametakeyword";
假如如许我们看到如许的HTML天生:
<head>
<metaname="description"content="thisismetadescription"/>
<metaname="keywords"content="thisisametakeyword"/>
</head>
19、GeneratingClientIDs:
web控件的客户端ID是依据父控件ID静态的发生。以是,假如你在一个用户控件中利用textbox,我们必需检察为它临盆甚么样ID,才干在客户真个剧本中间接利用。
偶然这些是静态的改动用户控件的称号也变动它的子控件ID。在asp.net4.0中,这个成绩是能够由页面的ClientIDMode属性办理。它有以下大概的值:AutoID,Static,Predictable和Inherit。
AutoID:是webpage的默许值,功效和之前ASP.NET的版本一样。
Static:为控件设置一个静态的ID,以是我们不必要小心父控件的ID,我们也能利用javascript援用它。
比方一个用户控件内里的textbox,它表面胡一个ClientIDMode设置为static
<asp:TextBoxID="textbox1"runat="server"clientIDMode="Static"></asp:TextBox>
<uc1:WebUserControlID="WebUserControl1"runat="server"/>
这个用户控件包括了textbox2
<asp:TextBoxID="TextBox2"ClientIDMode="Static"runat="server"></asp:TextBox>
这个代码将发生上面的HTML:
<inputname="ctl00$MainContent$textbox1"type="text"id="textbox1"/>
<inputname="ctl00$MainContent$WebUserControl1$TextBox2"type="text"id="TextBox2"/>
假如我们移除ClientIDMode="static",输入胡HTML将会是:
<inputname="ctl00$MainContent$textbox1"type="text"id="MainContent_textbox1"/>
它将发生象之前asp.net版本的textbox的ID
Predictable:假如gridview大概listview控件中我们设置ClientIDMode的值为Predictable,它将会串联控件ID和Gridview的ID,column的值在ClientIDRowSuffiex属性上提到:
GridviewID="GridView1"
ClientIDMode="Predictable"
ClientIDRowSuffix="ItemID"
假如在gridview的模板列中的有一个ID为Label1的label控件,它被绑定在ItemID列上。
它的ID将会是:ID=GridView1_Label1_200。
假如我们用数据绑定控件以外利用web控件,设置ClientIDMode即是Predictable:
<asp:TextBoxID="TextBox1"runat="server"ClientIDMode="Predictable"></asp:TextBox>
<asp:PanelID="panel1"runat="server">
<asp:TextBoxID="TextBox2"runat="server"ClientIDMode="Predictable"></asp:TextBox>
</asp:Panel>
你能够看到webcontrols在一个面板输入和别的一个再面板之外输入。
<inputname="ctl00$MainContent$TextBox1"type="text"id="MainContent_TextBox1"/>
<divid="MainContent_panel1">
<inputname="ctl00$MainContent$TextBox1"type="text"id="MainContent_TextBox1"/>
</div>
它将发生一切web控件的ID,是panel的页面的ID加上子控件的ID。
Inherit:WEB控件默许是承继父容器的ID。控件能掩盖它父控件的属性。以是我能为ClientModeID设置分歧的值。
20、PermanentRedirect:
在有些情形下,假如以后页面已过期,我们但愿将用户重定向到新开辟的网页。我们可使用Response.Redirect转移页到新的页面。可是,在这类情形下,搜刮引擎保留搜刮索引的网页的旧信息。别的,假如用户扫瞄到这个网页,他将被重定向到这个网页,然后用命令的response.redriect匡助新翻开的一页。
但在ASP.NET4.0中一个新的命令Response.RedirectPermanent可用于变动服务器页上的头信息。因而,假如用户往为他间接重定向到新的一页,并为他节俭了双行页面。在该网站和网页更新的发明头和更新其索引信息,展现最新的信息从头搜刮索引一样的搜刮引擎。
21、NewBrowserDefinitions:
在ASP.net3.5近几年,一些扫瞄器已更新,个中包含Googlechrome和那些撑持blackberry智妙手机。ASP.Net4.0的HttpBrowserCapabilities类被更新切合撑持新扫瞄器。
22、Package/Publish:

Package/Publish供应设置publish和package命令。设置调试选项,像之前的版本一样,Publish供应设置编译和天生的选项。
假如托管服务器上没有SQLExpress或假如您不但愿包括公布的文件,然后选择从App_Data文件夹中扫除的那些文件。假如您选择选项创立一个的Web包像ZIP文件,它会创立一个部署的zip文件。不然,将是默许解紧缩的文件夹。
默许情形下,程序包在使用程序的OBJ文件夹下创立。默许它不会在办理计划扫瞄器中显现,直到您选择显现一切文件选项。我们还能够设置服务器Web使用程序称号和方针服务器的物理路径。
23、DeploySQL:

部署SQL选项,同意您设置将毗连字符串作为部署的一部分。您可使用分歧的称号和值手动增加毗连字符串,或按一下import按钮从web.config导出。你能够仅仅选择形式剧本或数据库选项。在一个毗连字符串显现源设置,我们能够为设置方针服务器的值。

您还能够手动增加数据库剧本文件,经由过程点击增加按钮。您还能够变动SQL文件,以便在服务器上运转。
c语言的编译器,几乎是所有新平台都有的。因此从这点上看,c语言的程序,比其他任何语言更加容易跨平台。
愤怒的大鸟 该用户已被删除
沙发
发表于 2015-1-18 14:38:14 | 只看该作者
CGI程序在运行的时候,首先是客户向服务器上的CGI程序发送一个请求,服务器接收到客户的请求后,就会打开一个新的Process(进程)来执行CGI程序,处理客户的请求。CGI程序最后将执行的结果(HTML页面代码)传回给客户。
若相依 该用户已被删除
板凳
发表于 2015-1-25 21:29:24 | 只看该作者
网页从开始简单的hmtl到复杂的服务语言,走过了10多个年头,各种技术层出不穷,单个的主流技术也在不断翻新的版本,现在分析下各种语言的区别、优势、劣势、开发注意事项!
admin 该用户已被删除
地板
发表于 2015-2-4 06:57:08 | 只看该作者
同时也感谢博客园给我们这个平台,也感谢博客园的编辑们做成专题引来这么多高人指点。
谁可相欹 该用户已被删除
5#
发表于 2015-2-9 18:18:45 | 只看该作者
它可通过内置的组件实现更强大的功能,如使用A-DO可以轻松地访问数据库。
6#
发表于 2015-2-27 15:37:21 | 只看该作者
微软又推出ASP.NET。这不是ASP的简单升级,而是全新一代的动态网页实现系统,用于一台WEB服务器建立强大的应用程序。是微软发展的新体系结构.NET的一部分,是ASP和.NET技术的结合。
再见西城 该用户已被删除
7#
发表于 2015-3-9 10:17:29 | 只看该作者
碰到复杂点的问题都不知道能不能解决,现在有点实力的公司都选择自已在开源的基础上做开发。但没听说过有人在IIS上做改进的,windows、sqlserver集群方面的应用也很少见。
若天明 该用户已被删除
8#
 楼主| 发表于 2015-3-16 22:07:45 | 只看该作者
ASP.net1.1和2.0在程序上的语法也有很大不同,现在2.0属于新出来的,不知道半年后会不会有3.0(说笑一下)。Windows2003系统自动支持ASP和ASP.net环境,不用安装任何程序。Asp.net属于编译语言。ASP的最大不同(ASP属于解释语言)。
变相怪杰 该用户已被删除
9#
发表于 2015-3-23 07:02:30 | 只看该作者
代码逻辑混乱,难于管理:由于ASP是脚本语言混合html编程,所以你很难看清代码的逻辑关系,并且随着程序的复杂性增加,使得代码的管理十分困难,甚至超出一个程序员所能达到的管理能力,从而造成出错或这样那样的问题。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-23 18:15

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表