asp.net中用法总结——个人
1:在.aspx页面,<% %>标签相当于在.cs页面的代码,也就是说你在.cs文件里面怎样写,就可以在.aspx文件里面的<% %>标签里面怎样写。
2:在.aspx页面,<%= %>标签可以调用你的后台的变量或者方法等,不过被调用的方法必须是public的。
如果你的Default.cs文件里面有:
public string str = "调用后台方法!";
public string GetStr()
{
return "调用后台方法!";
}
那么你的Default.aspx文件里面就可以这样写:
<asp:Label ID="Label2" runat="server" Text='<%=str%>'></asp:Label>
<asp:Label ID="Label1" runat="server" Text='<%= GetStr() %>'></asp:Label>
3:<%#Eval() %>与<%#Bind() %>,这两者的使用方法非常相似,目前我只发现一点区别:
相同点:
1,两者都是绑定数据源的方法,比如说你想将数据库中的某个字段绑定到页面上的某个Label上,就有代码:
<asp:Label ID="Label1" runat="server" Text='<%#Eval("pSex") %>'></asp:Label>或者
<asp:Label ID="Label1" runat="server" Text='<%#Bind("pSex") %>'></asp:Label>此时两者的效果是一样的。
不同点:
1:如果在绑定数据的同时还要调用后台(.cs文件)的方法,举个例子,需要绑到页面上的字段数据太长,所以必须截断,此时可以调用后台的方法来实现,例子部分代码:
.cs文件:
//字符太长将截断,用“···”代替。
public string Replace(string str)
{
if (str.Length > 20)
{
str = str.Substring(0, 10) + "···";
}
return str;
}
.aspx文件:
<asp:TextBox ID="TextBox2" runat="server" Text='<%# Replace(Eval("pPassWord").ToString()) %></asp:TextBox>
注意,此时只能用Eval方法,因为Eval方法调用了.ToString()方法,而Bind却不能调用此方法。。。
说明:此贴为菜鸟贴,没有深度,只是多次遇到此问题而作的一个总
相关文档:
-----------------------------------------------------引言开始-----------------------------------------------------
事情的起因是站点出现未登陆的假象,点着点着就跳到登陆页或提示用户登陆。
因为很多页面都继承了一个PageBase类,这个类会判断用户是否登陆如果没有登陆就会 ......
刚刚在headmenu控件里面写了一个导航条,用到了本地的图片,在控件中显示良好,可是放到母版式页后,发现导航条背景图片没了,于是仔细检查了下图片的url,我用的是绝对路径,难道放在主页上后,路径也改变了,上网查了下,还真是这个问题,图片在控件里面看不到没关系,关键是要在母版式页能看到就行,路径都要根据母版页的写. ......
ASP.NET可以利用WebConfigurationManager和直接利用XML方式操作web.config,WebConfigurationManager比较简单,但是清除注释代码。两者操作方式都需要有写权限。
方法一,利用WebConfigurationManager,需要引用System.Web.Configuration.WebConfigurationM ......
获取网站根目录的方法有几种如:
Server.MapPath(Request.ServerVariables["PATH_INFO"])
Server.MapPath("/")
Server.MapPath("")
Server.MapPath(".")
Server.MapPath("../")
Server.MapPath("..")
&nb ......