1、类似jsp的servlet的程序,以webset为例,右键--添加新项,一般处理程序,以ashx结尾的
2、~服务器自动编译成路径
3、aspx的控件中设置ontextchanged=“标识”,在cs中就必须有一个protected的“标识”方法,这跟DWR一样
4、ctrl+l删除一行代码
5、内置对象response,request,application,session,cookie,server(通用工具栏对象),QueryString通常使用该属性
获取上一页从地址栏中传递过来的参数,存放信息Session/application["name"]
6、application的lock和unlock像线程锁
7、global.asax文件的作用:
1).定义Application级别,Session级别的变量,对象和数据;即定义全局变量。
2).定义在Application中的,基于Application,Session的事件;
8、RequiredFieldValiator:检查某个字段是否输入
CompareValidator:检查某个字段的内容与指定的对象进行比较
RangeValidator:检查某个字段的内容是否处在指定的范围内
RegularExpressionValidator:检查某个字段的内容是否符合指定的格式,如电话号码、身份证
CustomValidator:可自己编写一段程序,自定义验证条件
ValidationSummary:这个空间不提供验证功能,只负责显示所有的验证报错信息
若要取消客户端验证,可将验证控件的EnableClientSideScript的属性设置为False;
每个验证控件只能做一种验证,若要对同一个字段进行一项以上的验证,可以结合多个验证控件,并将它们的ControlToValidate
属性都指向同一控件。
9、·ADO.NET,使用Command对象操作数据库,实现添加、修改和删除
·运用节省内存的DataReader对象读取数据库中的数据
·使用ADO.NET核心对象DataSet将数据存储到内存中
·应用DataSet对象和DataAdapter对象查询数据
·使用DataAdapter更新数据库中的数据(支持批量更新)
·DataReader比DataSet更节约内存,它每次只读一行,DataReader在读取数据的时候要求数据库保持在链接状态,读完数据之后
才能断开链接
·DataAdapter是一种充当DataSet对象与实际数据源之间桥梁的对象,它是专门为DataSet服务的
10、command对象和connection对象一样也分为四种,根据不同的数据库选择不同的对象
11、aspx中的控件,在对应的.cs文件中用控件的IDname.操作
13、数据库控件的应用:GridView设置控件数据源然后绑定数据
14、ascx是web用户控件,用户控件必须嵌入到aspx中才能使用
15、缓存
16、ajax:
脚本管理员:ScriptManager,它在页面上没有可视界面,它呈现到AJAX js库的链接。
局部更新面板:UpdatePanel控件,只需要将服务器更新内容的控件放入到UpdatePanel即可。
定时操作:Timer控件,两个比较重要的属性就是Interval(设置更新最大毫秒数,默认60S),到达条件时触发服务端Tuck事件,
Enalbed,相当于把定时器关了,即使事件到了也不响应
Ajax Control Toolkit:扩展控件 (http://ajaxcontroltoolkit.codeplex.com/releases/view/105897)
17、使用LINQ to SQL操作SQL Server数据库
18、使用LINQ to DataSet查询DataSet对象
19、使用LINQ to XML操作文件
20、空值操作,比如int不可以为null,声明时 int?i=null; 这就可以为null了
21、LINQ中的var在编译时设置变量值的类型,查询时的语法像foreach循环+条件。
fromAndselect:int[] values = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 0 };
var value = from v in values
where v < 5
select v;
Response.Write("查询结果:<br>");
foreach (var v in value)
{
Response.Write(v.ToString() + "<br>");
}
====================================================
groupbyToLinq: int[] values = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 0 };
var value = from v in values
group v by v % 2 == 0 into g
select g.Key;
foreach (var i in value) //输出查询结果
{
foreach (int j in i)
{
Response.Write(j + "<br>");
}
}
====================================================
orderbyToLinq:
int[] values = { 5, 8, 3, 4, 1, 6, 7, 2, 9, 0 };
var value = from v in values
where v < 3 || v > 6
orderby v descending
select v;
Response.Write("查询结果:<br>");
foreach (var i in value)
{
Response.Write(i + "<br>");
}
22、into使用g作为分组临时标示符,使用该标示符可以存储group,join及select子句的结果,并且该约定还要一个属性key,他返回用于创建组的值
23、LINQ to SQL将数据库和数据表映射成对应的实体类和类成员,跟myeclipse的hibernate反转工具一样,添加新项-创建LINQ to sql创建dbml文件,
左边数据库链接之后,把表拖到右边空白,自动生成。在web.config中生成的链接信息为<add name="db_14ConnectionString" connectionString="Data Source=wzy\sqlexpress;Initial Catalog=db_13;User ID=sa;pwd=123"
1)、使用LINQ插入数据,首先声明数据库映射类对象,然后声明数据表的对象,赋值后调用InserOnSubmit()将表对象插入数据库映射对象中,然后数据库映射对象执行SubmitChanges
string strCon = ConfigurationManager.ConnectionStrings["db_13ConnectionString"].ConnectionString.ToString();
LinqDBDataContext lqDB = new LinqDBDataContext(strCon); //创建DataContext
tb_LeaveMessage info = new tb_LeaveMessage(); //实例化一个实体对象
info.Name = this.TxtName.Text.Trim(); //添加留言人姓名
info.EMail = this.TxtEmail.Text.Trim(); //添加Email地址
info.QQ = this.TxtQQ.Text.Trim(); //添加QQ号
info.Telphone = this.TxtTel.Text.Trim(); //添加电话号
info.PersonUrl = this.Txthomepage.Text.Trim();//添加个人主页
info.Message = this.TxtLeaveWord.Text.Trim(); //添加留言信息
lqDB.tb_LeaveMessage.InsertOnSubmit(info);//向tb_LeaveMessage表添加该实体对象
lqDB.SubmitChanges(); //调用SubmitChanges()方法告诉LINQ执行Insert操作
2)、更新数据
int messageID = Convert.ToInt32(Request.QueryString["ID"].ToString());//获取页面的传过来的ID
var results = from result in lqDB.tb_LeaveMessage //设置LINQ表达式
where result.ID == messageID
select result;
foreach (var result in results)
{
result.Name = TxtName.Text;
result.QQ = TxtQQ.Text;
result.EMail = TxtMail.Text; //修改留言人Email地址
result.Telphone = TxtPhone.Text; //修改留言人电话号
result.PersonUrl = TxtPage.Text; //修改留言人个人主页
result.Message = TxtMessage.Text;//修改留言信息
}
lqDB.SubmitChanges(); //提交修改操作
3)、删除数据
int id = Convert.ToInt32(GridView1.DataKeys[e.RowIndex].Value.ToString());
//指定所要删除的留言信息ID值
tb_LeaveMessage msg = lqDB.tb_LeaveMessage.SingleOrDefault(message => message.ID == id);
//执行删除操作
lqDB.tb_LeaveMessage.DeleteOnSubmit(msg);
lqDB.SubmitChanges();//提交删除操作
23、LINQ to DataSet(待续)
24、lambda表达式,该运算符读为“goes to”,(input parameters)=>expression,左边是输入参数,右边是表达式。
看一个控制台例子就明白了
int[] nums = { 1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024 };
int singleNum = nums.Single(x => x > 16 && x < 64);
Console.WriteLine(singleNum.ToString());
.net学习笔记
最新推荐文章于 2024-07-20 11:40:22 发布