Session的首字母要大写吧。另外,Session["任意字符"]都不会出错啊,只不过值是null罢了。

解决方案 »

  1.   

    不可能的,我的大小写没有问题,用户控件的代码如下所示:
    public void main_create()
    {

    string aa = Session["u_grant"].ToString();
    //string bb = Session["department_code"].ToString();
    //string cc = Session["employee_code"].ToString(); if (aa == "T1")
    {
    creat_root();
    }
    if (aa == "T2" )
    {
    creat_root(Session["department_code"].ToString());
    }
    if (aa == "P" )
    {
    creat_employee_root(Session["employee_code"].ToString());
    }
    }
      

  2.   

    以下是.aspx中引用以上用户控件的html:
    <%@ Page language="c#" Codebehind="TreeForm.aspx.cs" AutoEventWireup="false" Inherits="WebTest.TreeForm" %>
    <%@ Register TagPrefix="uc1" TagName="UserTreeModuel" Src="component/UserTreeModuel.ascx" %>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
    <HTML>
    <HEAD>
    <title>TreeForm</title>
    <meta name="GENERATOR" Content="Microsoft Visual Studio 7.0">
    <meta name="CODE_LANGUAGE" Content="C#">
    <meta name="vs_defaultClientScript" content="JavaScript">
    <meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
    </HEAD>
    <body MS_POSITIONING="GridLayout">
    <form id="TreeForm" method="post" runat="server">
    <TABLE id="Table1" style="Z-INDEX: 101; LEFT: 4px; POSITION: absolute; TOP: 8px" height="100%" cellSpacing="0" cellPadding="0" width="100%" border="0">
    <TR>
    <TD><FONT face="宋体">
    <asp:Panel id="Panel1" runat="server" Height="100%" Width="100%">
    <uc1:UserTreeModuel id="UserTreeModuel1" runat="server"></uc1:UserTreeModuel>
    </asp:Panel></FONT></TD>
    </TR>
    </TABLE>
    </form>
    </body>
    </HTML>
      

  3.   

    然后我将这个aspx放入到一个frameset中,frameset的html如下所示:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN">
    <html>
    <head>
    <TITLE>标题和内容框架集</TITLE>
    <META http-equiv="Content-Type" content="text/html; charset=gb2312">
    <meta content="Microsoft Visual Studio.NET 7.0" name="GENERATOR">
    <meta content="http://schemas.microsoft.com/intellisense/ie5" name="vs_targetSchema">
    </head>
    <frameset border="0" frameSpacing="0" rows="23%,77%" frameBorder="0">
    <FRAME src="WebForm1.aspx">
    <frame style="OVERFLOW: auto; CLIP: rect(auto auto auto auto); BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: none" name="main">
    <noframes>
    <pre id="p2">
    ================================================================
    关于完成此标题和内容框架集的说明
    1. 为“banner”框架添加 src="" 页的 URL。
    2. 为“contents”框架添加 src="" 页的 URL。
    3. 为“main”框架添加 src="" 页的 URL。
    4. 将 BASE target="main" 元素添加到“contents”页的 
    HEAD,以将“main”设置为默认框架,“contents”页的链接将
    在该框架中显示其他页。
    ================================================================

    </pre>
    <p id="p1">
    此 HTML 框架集显示多个 Web 页。若要查看此框架集,请使用支持 HTML 4.0 及更高版本的 Web 浏览器。
    </p>
    </noframes>
    </frameset>
    </html>
      

  4.   

    初始化在登录的aspx中赋值,这个页面中没有(主要是不能赋初值),我需要由其它aspx赋完之后,在这个页面中引用。