仓酷云

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

[学习教程] ASP.NET教程之在.NET框架下利用自界说设置设置

[复制链接]
分手快乐 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:32:36 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
呵呵,那你就关注微软的招聘信息以及别人的招聘经验啊,还有也不一定去做技术的,你如果真的想去就多了解了解。(其实我的意思是说想到微软做技术是很不容易的。.net框架.NET框架经由过程基于XML的设置使设置设置得心应手。它同时还供应了需要的办法,经由过程汇合类(Collectionclasses)会见这些设置。
经由过程一个静态的ConfigurationSettings类可会见实践的设置数据。该类还供应了一个GetConfig()办法,可向一个符合的汇合前往一个工具。本文中,我将树模三种可用来会见和存储设置信息的办法。
使用设置数据存储在App.config文件,并由configSections节点界说。每section都有一个type属性界说。这里我将会商的3个范例为NameValueSectionHandler、SingleTagSectionHandler和DictionarySectionHandler。你能够用一个sectionGroup元素界说节组。以下是一个设置节界说的例子:
<sectionname="MyCustomSection"
type="System.Configuration.NameValueSectionHandler"/>
倡议利用type="System.Configuration.NameValueSectionHandler,System,Version=1.0.3300.0,Culture=neutral,PublicKeyToken=b77a5c561934e089"
节组是嵌进一个sectionGroup元素的自力设置节。以下是一个节组的例子:
<sectionGroupname="CustomGroup">
<sectionname="Custom1"
type="System.Configuration.NameValueSectionHandler"/>
<sectionname="Custom2"type="System.Configuration.NameValueSectionHandler"/>
</sectionGroup>
最初,你所指定的设置节将用于机关存储设置数据的自界说的XML节点。若要向设置节增加数据,只需将该设置节作为一个XML节点包括出来,并用add节点增加Collection数据。下例为一个NameValueSectionHandler设置节:
<MyCustomSection>
<addkey="key1"value="value1"/>
<addkey="key2"value="value2"/>
</MyCustomSection>
MyCustomSection程序段包括一个定名值汇合,其两个出口由key1和key2界说。
SingleTagSectionHandler较简单机关。正如NameValueSectionHandler,设置节可在configSections节点中找到。但在SingleTagSectionHandlers和NameValueSectionHandlers中,设置数据的增加体例是分歧的,以下所示:
...
<sectionname="MySingleTagSection"
type="System.Configuration.SingleTagSectionHandler"/>
...
<MySingleTagSectionsetting1="value1"setting2="value2"setting3="value3"/>
...
DictionarySectionHandler与NameValueSectionHandler类似,但前者前往hashtable,后者前往NameValueCollection。当会见大批设置值时,hashtable要快于NameValueCollectio。DictionarySectionHandler与NameValueSectionHandler的机关体例不异,以下例:
...
<sectionname="MyDictionarySection"
type="System.Configuration.DictionarySectionHandler"/>
...
<MyDictionarySection>
<addkey="key1"value="value1"/>
</MyDictionarySection>
...
我本人用了一下,报错。。缘故原由还挺出格
System.Configuration.DictionarySectionHandler,System,Version=1.0.3300.0,Culture=neutral,PublicKeyToken=b77a5c561934e089
没有举措把type改成以上那段。终究行了。
机关节组的办法与机关独自设置节的办法基础不异,独一的分歧在于前者的自界说节点相互嵌套。借用后面的节组界说,以下是对节组的完成:
<CustomGroup>
<Custom1>
<addkey="key1"value="value1"/>
</Custom1>
<Custom2>
<addkey="key1"value="value1"/>
</Custom2>
</CustomGroup>
经由过程System.Configuration.ConfigurationSettings定名空间的GetConfig()办法和自界说设置节的串值来会见使用设置设置,然后将该办法的了局转为符合的范例。
关于SingleTagSectionHandler,将了局转为System.Collections定名空间的IDictionary接口范例。关于NameValueSectionHandler,了局转为在System.Collections.Specialized定名空间中界说的NameValueCollection范例。最初,关于DictionarySectionHandler,了局转为System.Collections定名空间中的Hashtable范例。
关于节组,独一的区分是,将加上正斜杠和设置节名的节组名作为字符串参数传送给GetConfig()办法,以会见自界说设置。
以下是一个利用这些自界说设置的实例:
System.Collections.IDictionarystsh=(System.Collections.IDictionary)
System.Configuration.ConfigurationSettings.GetConfig("MySingleTagSection");
System.Collections.Specialized.NameValueCollectionnvsh=
(System.Collections.Specialized.NameValueCollection)
System.Configuration.ConfigurationSettings.GetConfig("MyNameValueSection");
System.Collections.Hashtabledsh=(System.Collections.Hashtable)
System.Configuration.ConfigurationSettings.GetConfig("MyDictionarySection");
System.Collections.Specialized.NameValueCollectionsgnvsh=
(System.Collections.Specialized.NameValueCollection)
System.Configuration.ConfigurationSettings.GetConfig("MySectionGroup/MySection
1");
System.Diagnostics.Debug.WriteLine((string)stsh["sample1"]);
System.Diagnostics.Debug.WriteLine((string)nvsh["key1"]);
System.Diagnostics.Debug.WriteLine((string)dsh["key1"]);
System.Diagnostics.Debug.WriteLine((string)sgnvsh["key1"]);
以下是用于下面代码的一段设置XML代码:
<?xmlversion="1.0"encoding="utf-8"?>
<configuration>
<configSections>
<sectionname="MySingleTagSection"
type="System.Configuration.SingleTagSectionHandler"/>
<sectionname="MyDictionarySection"
type="System.Configuration.DictionarySectionHandler"/>
<sectionname="MyNameValueSection"
type="System.Configuration.NameValueSectionHandler"/>
<sectionGroupname="MySectionGroup">
<sectionname="MySection1"
type="System.Configuration.NameValueSectionHandler"/>
<sectionname="MySection2"
type="System.Configuration.NameValueSectionHandler"/>
</sectionGroup>
</configSections>
<MySingleTagSectionsample1="value1"sample2="value2"sample3="value3"/>
<MyDictionarySection>
<addkey="key1"value="value1"/>
<addkey="key2"value="value2"/>
</MyDictionarySection>
<MyNameValueSection>
<addkey="key1"value="value1"/>
<addkey="key2"value="value2"/>
</MyNameValueSection>
<MySectionGroup>
<MySection1>
<addkey="key1"value="value1"/>
<addkey="key2"value="value2"/>
</MySection1>
<MySection2>
<addkey="key1"value="value1"/>
<addkey="key2"value="value2"/>
</MySection2>
</MySectionGroup>
</configuration>
欲知更多信息,请会见MSDNLibrary中的applicationconfigurationsettingsconfigurationschema
对于new隐藏成员的作用,往往是出于使用了一个第三方类库,而你又无法获得这个类库的源代码,当你继承这个类库的某个类时,你需要重新实现其中的一个方法,而又需要与父类中的函数使用同样的函数,这是就需要在自定义的子类中把那个同名函数(或成员)加上new标记,从而隐藏父类中同名的成员。
admin 该用户已被删除
沙发
发表于 2015-1-19 16:18:59 | 只看该作者
在调试JSP代码时,如果程序出错,JSP服务器会返回出错信息,并在浏览器中显示。这时,由于JSP是先被转换成Servlet后再运行的,所以,浏览器中所显示的代码出错的行数并不是JSP源代码的行数。
爱飞 该用户已被删除
板凳
发表于 2015-1-25 10:37:35 | 只看该作者
当然我们在选择Asp.net主机是,除了要考虑服务提供商在版本是否是实时更新以外,机房的环境和配置也是非常重要的,通常选择骨干网的机房,在速度和稳定性上会非常有保证。
精灵巫婆 该用户已被删除
地板
发表于 2015-2-8 07:16:08 | 只看该作者
提供基于组件、事件驱动的可编程网络表单,大大简化了编程。还可以用ASP.NET建立网络服务。
变相怪杰 该用户已被删除
5#
发表于 2015-2-24 22:01:43 | 只看该作者
主流网站开发语言之ASP:ASP是微软(Microsoft)所开发的一种后台脚本语言,它的语法和VisualBASIC类似,可以像SSI(ServerSideInclude)那样把后台脚本代码内嵌到HTML页面中。虽然ASP简单易用,但是它自身存在着许多缺陷,最重要的就是安全性问题。
若天明 该用户已被删除
6#
发表于 2015-3-7 13:46:37 | 只看该作者
可以通过在现有ASP应用程序中逐渐添加ASP.NET功能,随时增强ASP应用程序的功能。ASP.NET是一个已编译的、基于.NET的环境,可以用任何与.NET兼容的语言(包括VisualBasic.NET、C#和JScript.NET.)创作应用程序。另外,任何ASP.NET应用程序都可以使用整个.NETFramework。开发人员可以方便地获得这些技术的优点,其中包括托管的公共语言运行库环境、类型安全、继承等等。
活着的死人 该用户已被删除
7#
发表于 2015-3-15 07:08:57 | 只看该作者
ASP.Net和ASP的最大区别在于编程思维的转换,而不仅仅在于功能的增强。ASP使用VBS/JS这样的脚本语言混合html来编程,而那些脚本语言属于弱类型、面向结构的编程语言,而非面向对象。
因胸联盟 该用户已被删除
8#
发表于 2015-3-21 20:36:54 | 只看该作者
那么,ASP.Net有哪些改进呢?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-12-24 08:57

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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