Asp.net 2.0 WebPart使用更点滴。ASP.NET 配置文件纵横谈(二)

立马几上修以WebPart,发现许多题目,使用简单记录如下,同各位共享:
1、WebPart的动要冲一个经身份验证的用户会话。
2、WebPart的应用的个性化应用为有人数的选择项默认是禁用的,可以透过改Web.config来形成
<webParts>
   <personalization>
          <authorization>
             <allow users=”*” verbs=”enterSharedScope” />
          </authorization>
      </personalization>
    </webParts>
3、WebPart 默认使用页面的 URL 存储个性化数据.但是未分包
querystrings,现在一旦实现以通用的页面(模版)来兑现简单的派系系统,通过不同之querystrings来读取个人,部门等的数量。这样个人自己设定的设定好直接跟他人共享。这样的求于现有的WebPart系统上无法兑现,在WebPart
Components for Asp.net 2.0: Workspace home
URL:http://www.gotdotnet.com/workspaces/workspace.aspx?id=65fa26c3-a62a-49d6-895d-422272e53a0c
有一个这样的WebPart系统可满足要求。这个WebPart的作者介绍:http://fredrik.nsquared2.com/viewpost.aspx?PostID=326

                                                            ASP.NET
配置文件纵横谈(二)

 4、启用WebPart得导出功能:修改web.config中WebPart的安
  <webParts enableExport=”true”>

 

5、导入自定义的webPart 出现谬误:Cannot add a control of Type
DotnetClubPortal.WebControls.WebParts.RSSReader. The Type must be
loadable by BuildManager.GetType(string typeName).
拍卖措施:修改web.config文件:
<runtime>
    <assemblyBinding xmlns=”urn:schemas-microsoft-com:asm.v1″>
      <probing privatePath=”Bin” />
    </assemblyBinding>
 </runtime>
http://msdn2.microsoft.com/en-us/library/e0s9t4ck(en-US,VS.80).aspx

 

文山会海文章链接:

ASP.NET
配置文件纵横谈(一)

ASP.NET
配置文件纵横谈(二)

ASP.NET
配置文件纵横谈(三)

 

          下面我们就算来探视<location/>节点。我们经常以配备文件设置这个节点来对URL访问进行授权。我们好当一个ASP.NET网站(如:c:\inetpub\wwwroot\Demo\web.config的web.config中上加下面的配备:

图片 1图片 2Code
图片 3 <location path=”Some Path “>
图片 4  <system.web>
图片 5   <authorization>
图片 6    <allow roles=”Secured, Administrators” />
图片 7    deny users=”*” />
图片 8   </authorization>
图片 9  </system.web>
图片 10 </location>

 

     <location/>元素让解说为一个新的杜撰的配备文件,也就是说我们实际上呢堪把<location/>元素中之部署将出来,放在一个单独的web.config中,就像咱于网站的一个文书夹着入一个web.config一样。所以当<location/>元素中使申明<system.web>,而且不能够一直就将<authorization
/>元素放在<location/>下。

      在网站受,经常要本着许多的页面进行授权访问,所以我们吧每每可以拿那些页面在一个文本夹着,然后在文件夹着加大一个web.config。相较于前者,在网站到底目录中之所以<location/>元素来进展URL授权更加的众,因为可以于一个文本中对所有的文本进行授权和指向授权展开改动。而且若展开URL授权的文件夹很多,那么我看或者当改的下遗漏某处,而造成运行失败。

      在<location/>中,有一个性就是path,用来安进行URL授权的公文,或者文件夹。而且我们还path属性的部署为颇灵活的,可以设置path的值来针对有文件设置url授权访问,如path=”default.aspx”,还足以对文件夹进行授权访问,如”subfolder”(注:subfolder是网站受到的某个文件夹),还可将事先的双面结合,如”subfolder/default.aspx”,”subfolderA/subfolderB”.如果我们于IIS虚拟目录下放置一个web.config,我们还得设置对有网站的授权访问,如”Default
WebDite”。 所以在<location/>中用path元素可以对要授权的文本,文件夹进行集中之主宰。
 

      下面来探allowoverride属性
      很多之节点元素还有其一特性,这个特性可以防范下一级的布局文件被上一级的布置文件之之一元素进行重写(关于配置文件之层级关系表现第一首,从上到下基本是:machine.config–web.config)。对于<location/>,如果在machine.config中布局下面的:

图片 11图片 12Code
图片 13 <location allowOverride=”false”>
图片 14  <system.web>
图片 15   <trust level=”Medium” />
图片 16  </system.web>
图片 17 </location>

 
      那么一旦你在公的网站的web.config中又失还定义<location/>就会报错。

      与lock有关的性质的以
      主要涵盖lockAttributes,lockElements,lockAllAttributesExcept,lockAllElementsExcept,充字面意思就充分轻了解她的意。
      首先来瞧lockAttributes。我们得于雅高层级来定义有元素的lockAttributes或者lockAllAttributesExcept,如,我们可以machine.config中安装有元素的习性,使得下一级的web.config不可知重写锁定的属性。例如,我们明白<membership
/>有过多底性:defaultProvider,
userIsOnlineTimeWindow,hashAlgorithmType等。可能我们期望保有的先后提供者(providers)都安排也hashAlgorithmType=SHA256哈希加密,因为安全的待。

      我们一般在咱们的网站面临之 web.config中这样安排的:

图片 18图片 19Code
图片 20 <membership defaultProvider=”FirstProviderDefinition”
图片 21  hashAlgorithmType=”SHA1″
图片 22  userIsOnlineTimeWindow=”15″ >

      我们或当SHA1加密的安康不够,我们尽管以machine.config中布置:
 

图片 23图片 24Code
<membership hashAlgorithmType=”SHA256″ lockAttributes=”hashAlgorithmType”>

      这样,我们下的网站便无能够还修改hashAlgorithmType了。
      同理,我们呢足以锁定多单属性:
 

图片 25图片 26Code
<membership hashAlgorithmType=”SHA256″ lockAttributes=”hashAlgorithmType;userIsOnlineTimeWindow;defaultProvider”>

      同理,lockAllAttributesExcept的用法不再赘言,例如:

图片 27图片 28Code
<membership hashAlgorithmType=”SHA256″ lockAllAttributesExcept=”userIsOnlineTimeWindow” >。

  如果我们在machine.config配置如下:<membership …
lockAttributes=”*”
/>,那么以每个网站被虽未能够以重复写membership的旁性质。

      下面来看看锁定元素。
      我们要因为<membership />节点吧例。在<membership
/>中,我们得长很多之节点元素,如<providers />,<add
/>, <remove />,  <clear
/>,我们呢堪在machine.config锁定某个元素,如<membership
lockElements=”providers”>,所以,任何准备以咱们开之网站遭遇失去改变<providers
/>都见面出错。
      同理,lockAllElementsExcept用法以及lockAllAttributesExcept一样。而且我们还好将具备的要素锁定,如下

 

图片 29图片 30Code
 <membership>
  <providers lockElements=”*”>
   
  </providers>
 </membership>

 

      而且端的锁定元素与性的好做起来用。  如:

    

图片 31图片 32Code
 <membership lockElements=”providers” lockAttributes=”defaultProvider,hashAlgorithmType”>

 

 

相关文章