ASP.NET 开发知识小结(James Li)
做了几年的ASP.NET,积累了不少小技巧。但是技巧只适合于特定的环境,还不如加强对基础知识的理解与运用。下面是我的一点体会,与大家分享。
1 母版页
这个控件可以使我忘记html的iframe之类的页面框架方案,还有frameset.
asp开发中还支持<#include file=”head.asp>
现在有母版页可以轻松的以.NET的方式来进行编写页面。
1) 在母版页对应的内容页中,查找母版页中的控件 ,并给它赋值
MasterPage.FindControl(“lblTitle”)=”New Request”
2) 母版页中使用JavaScript,取到文本控件的值,验证它是否合法
’<=txtUserName.ClientID>’
2 User Control 不常用,但是有时候会用到。比如,为了统一不同用户的页面地址,把不同角色的页面放到User Control中,而在同一个页面中,根据当前登陆的用户判断,加载不同的User Control
新建立二个文件,PM.ascx, GM.ascx分别对应于角色是PM和GM时的页面,在页面中作如下判断
UserControl uc
swith(role)
{
case “PM”
uc=(UserControl) LoadControl(“~/PM.ascx”); break;
case ‘GM”
uc=(UserControl) LoadControl(“~/GM.ascx”); break;
}
placeHolder.Controls.Add(uc);
placeHolder是在页面上放置的一个PlaceHolder控件。
3 数据源控件 用法举例
把数据库的字段绑定到DropDownList 控件中
<asp:DropDownList ID="ddlEndCustomer" runat="server" Width="130" DataTextField="ShortName"
DataValueField="ShortName" DataSourceID="sqlEndCustomer">
</asp:DropDownList>
<asp:SqlDataSource ID="sqlEndCustomer" runat="server" ConnectionString="<%$ ConnectionStrings:HTSystemConnectionString %>"
SelectCommand="SELECT LTRIM(RTRIM([ShortName])) [ShortName] from [Customer] "> </asp:SqlDataSource>
再来一个XmlDataSource
<asp:DropDownList ID="ddlPartResin" runat="server" Width="130" DataSourceID="xmlLedgerAcc" DataTextField="Text" DataValueField="Value">
 
相关文档:
一.使用QueryString
Request.QueryString
在ASP时代,这个是较常用的方法,到了ASP.NET,好像用的人不多了,但是不管怎么说,这是一个没有过时,且很值得推荐的方法,因为不管是ASP还是ASP.NET,最基本的都还是基于HTTp协议的。 缺点是非常明显的,让在多个页面传递时,可能就Request不到了
使用Qu ......
ASP.NET允许我们在global.asax文件中编写能够接受全局事件的事件处理器。用户不会直接请求这个global.asax文件,而是在响应一个确定的应用程序事件中自动的执行global.asax文件。global.asax文件提供了跟传统的ASP应用程序中的global.asa文件类似的服务。
在global.asa ......
ASP.NET3.5可以很简答的实现一个很有用的功能,既跨页面传送,
传统的提交窗体只会将窗体提交给它自己。而跨页面的提交,
会将page1的内容传送个page2,并在page2中使用page1中的控件。
① 跨页面传递的简单实现
页面一(Default.aspx)中的控件
<a ......
方法一:
function document.onkeydown()
{
if(event.keyCode==13)
{
document.form1.all.Submit.click(); //这里的submit是按钮的ID
}
}
方法二:
......
步骤1:
引入5个DLL到项目中
分别是
using Discuz.Common;
using Discuz.Forum;
using Discuz.Config;
using Discuz.Entity;
using Discuz.Data;
步骤2:
public class Discuz_NT
{
public static ArrayList Login(string us ......