登峰之道---简约而不简单
分享阳光,分享快乐
1.引用外部CSS
      
<link REL="StyleSheet" HREF="css/standard.css" >
<asp:Label id="Message" EnableViewState="false" class="MESSAGE" runat="server" />
 
2. 安全性错误
    错误如下:要授予此应用程序所需的权限,请与系统管理员联系,或在配置文件中更改该应用程序的信任级别
    出现的问题:在页面里使用IE WEB Control自带的TreeView,居然出现上面的错误
    原因: 是我们把machine中的,信任等级改成了Medium
    解决方法:改行Full即可
  
<securityPolicy>
                
<trustLevel name="Full" policyFile="internal"/>
                
<trustLevel name="High" policyFile="web_hightrust.config"/>
                
<trustLevel name="Medium" policyFile="web_mediumtrust.config"/>
                
<trustLevel name="Low" policyFile="web_lowtrust.config"/>
                
<trustLevel name="Minimal" policyFile="web_minimaltrust.config"/>
            
</securityPolicy>
            
<!--  level="[Full|High|Medium|Low|Minimal]" -->
            
<trust level="Full" originUrl=""/>

3.引用虚拟目录(wwwroot)下的目录
  
 <!-- #include virtual="/include/imports_cs.inc" -->
    imports_cs.inc可以如下格式,也可以是HTML或是C#的代码
<%@ Import Namespace="System" %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.SqlClient" %>
<%@ Import Namespace="System.Data.OleDb" %>
<%@ Import Namespace="System.Data.SqlTypes" %>
<%@ Import Namespace="System.Web.Security" %>
<%@ Import Namespace="System.IO" %>
<%@ Import Namespace="System.Globalization"%>
<%@ Import Namespace="System.Web.Services.Protocols"%>
<%@ Import Namespace="System.Web.Mail" %>

4. 从C#代码中显示对话框
   
    Response.Write("<script language=javascript>");                 
                Response.Write(
"alert('登峰欢迎您';");
                Response.Write(
"</script>") ;   


5 数据绑定时的格式转化
<%# DataBinder.Eval(Container.DataItem, "size","{0:N}"%>
<%# DataBinder.Eval(Container.DataItem, "last_modify","{0:yyyy-MM-dd}"%>
 <img src='../images/<%# Util.GetFileType(DataBinder.Eval(Container.DataItem, "icon").ToString()) %>.gif'></img>
          <A target='<%# DataBinder.Eval(Container.DataItem, "target")%>' href='<%# DataBinder.Eval(Container.DataItem, "action")%>'>
           <asp:Label id="lblName" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "name") %>'>
           </asp:Label>
          </A> 


6.aspnet用户帐号权限的问题
在windows 2003下安装了VS2003,在运行web应用程序的时候出现一下错误:对路径“D:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\Temporary ASP.NET Files\test\db58b339\50f84c0”的访问被拒绝。
 
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.UnauthorizedAccessException: 对路径“D:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\Temporary ASP.NET Files\test\db58b339\50f84c0”的访问被拒绝。

ASP.NET 未被授权访问所请求的资源。请考虑授予 ASP.NET 请求标识访问此资源的权限。ASP.NET 有一个在应用程序没有模拟时使用的基进程标识(通常,在 IIS 5 上为 {MACHINE}\ASPNET,在 IIS
6 上为网络服务)。如果应用程序正在通过 <identity impersonate="true"/> 模拟,则标识将为匿名用户(通常为IUSR_MACHINENAME)或经过身份验证的请求用户。

由于在iis 6.0中,默认的应用程序池中的标示用的是Network Service,所以在进程中是使用Network Service这个帐号运行来运行w3wp.exe进程,而当我们在运行VS 2003的时候是需要对D:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\Temporary
ASP.NET Files\目录下进行读写操作的,所以看了一下该文件夹,发现没有Network Service,添加上该账号,同时选上FULL CONTROL,问题解决,但是至于为什么会产生这个问题我不大清楚,因为在安装WINDOWS 2003的时候,Network Service账号是存在于Temporary ASP.NET Files该文件夹安全列表中的。

顺便提一下,在IIS6.0中的默认应用程序池-->属性-->标示中把Net Service改成Local System该问题也可以解决。


7. 结构目录的路径问题
    学会应用   路径表示方法:"~", 相当于HttpRequest.ApplicationPath。
posted on 2005-05-19 10:08  登峰  阅读(560)  评论(0)    收藏  举报