摘要: 今天在将数据库里的datetime类型数据赋给C#里DateTime类型变量的时候遇到一个问题,那就是数据库里面的datetime数据存在null值。C#默认不能将null赋给DateTime变量,但是可以使用Nullable类型的DateTime,只需在声明变量的时候在DateTime后加一个?号,如:DateTime? x ;x便可以赋null值。但是从数据库的datetime类型变为C#的DateTime类型需要Convert.ToDateTime();如果数据库里面的datetime数据为null的话,这个方法是不能使用的。于是我加了个if语句:今天在将数据库里的datetime类型数 阅读全文
posted @ 2011-12-10 14:22 swjm119 阅读(2803) 评论(0) 推荐(1) 编辑
摘要: 当多个用户试图同时修改数据时,需要建立控制机制来防止一个用户的修改对同时操作的其他用户所作的修改产生不利的影响。处理这种情况的系统叫做“并发控制”。并发控制的类型通常,管理数据库中的并发有三种常见的方法: 保守式并发控制 - 在从获取记录直到记录在数据库中更新的这段时间内,该行对用户不可用。 开放式并发控制 - 只有当实际更新数据时,该行才对其他用户不可用。更新将在数据库中检查该行并确定是否进行了任何更改。如果试图更新已更改的记录,则将导致并发冲突。 最后的更新生效 - 只有当实际更新数据时,该行才对其他用户不可用。但是,不会将更新与初始记录进行比较;而只是写出记录,这可能就改写了自上次刷新记 阅读全文
posted @ 2011-12-10 14:21 swjm119 阅读(237) 评论(0) 推荐(0) 编辑
摘要: 在开发称重软件过程中,用到了各种各样的技术框架和概念,个人接触比较多点的还是List<T> 了,也比较感兴趣,毕竟.net中的List<T>非常方便,但是很遗憾是没有自带更方便的一些排序查找之类的函数,很多都得我们自己写函数,这非常的麻烦,其实这些方法想要的只是一个一句话的delegate而已。下面主要讨论三个方法,List<T>.Sort();List<T>.Find();List<T>.Exist(); 首先看List<T>.Sort()。其定义是:public void Sort( Comparison<T&g 阅读全文
posted @ 2011-12-10 14:19 swjm119 阅读(263) 评论(0) 推荐(0) 编辑
摘要: 1 让值类型为空:泛型使用system.Nullable<T>类型。如: System.Nullable<int> nullableInt nullableInt=Null; 2 hasValue方法可以测试system.Nullable<T>类型的变量有没有值,而引用 类型就不能随便用这个方法,因为引用变量为Null(对象不存在)的时候调用 HasValue方法时会抛出异常 3 int?是System.Nullable<int>的缩写,int和int?之间要运算必须转换和判 断,同理bool? 4 ??运算符(可空变量处理),提供默认值的一种方 阅读全文
posted @ 2011-12-10 14:18 swjm119 阅读(274) 评论(0) 推荐(0) 编辑
摘要: 打开http://www.vancl.com/发现采用的Asp.net,这点我感到很欣慰,毕竟国内采用.net技术体系的优秀网站少之又少。好奇之余右键-查看源码,却不由得皱起眉头,在此提几个可以让网站更快的前端建议:01.合并头部的script为一个(见图绿框部分),合并头部的css link为一个(见图红框部分)。减少对服务器端的文件请求数,加快客户端浏览器响应。02.合并尾部的script src=xxxx>成为一个(见图红框部分),以减少对服务器端的JS文件请求数,加快浏览器响应。03.将HTML压缩,去掉多余的空格和html注释,减少Html的大小,加快下载。可以参考http:/ 阅读全文
posted @ 2011-12-10 14:16 swjm119 阅读(436) 评论(0) 推荐(0) 编辑
摘要: <asp:Panel id=Panel1 runat=server DefaultButton="Button1"> <asp:TextBox id=TextBox1 runat=server/> <asp:Button id=Button1 runat=server Text="Button1"/> </asp:Panel> 阅读全文
posted @ 2011-12-10 14:07 swjm119 阅读(140) 评论(0) 推荐(0) 编辑
摘要: 1.<%=...%>与<%#... %>的区别: 答:<%=...%>是在程序执行时调用,<%#... %>是在DataBind()方法之后被调用 2.控件接收哪些类型数据? 答:接收Bind的控件,一般有DropDownList,DataList,DataGrid,ListBox这些集合性质的控件,而被捆绑 的主要是ArrayList(数组),Hashtable(哈稀表),DataView(数据视图),DataReader这四个,以后我们就可以 对号入座,不会出现DataTable被捆绑的错误了:) 3.DataBind,获得的数据,系统会将其 阅读全文
posted @ 2011-12-10 14:07 swjm119 阅读(114) 评论(0) 推荐(0) 编辑
摘要: delegate void dg1(string str1);private void button1_Click(object sender, EventArgs e){dg1 dg2 = new dg1(Show);dg2("Successful");}private void Show(string strShow){MessageBox.Show(strShow);}//委托四步曲//1、声明委托//2、欲委托的方法(同参数、同返回值)//3、实例化委托//4、调用委托实例//委托三统一//1、声明委托与欲委托方法的统一//2、声明委托与委托实例的统一//3、委托实 阅读全文
posted @ 2011-12-10 14:05 swjm119 阅读(158) 评论(0) 推荐(0) 编辑
摘要: 问题:当一个正在执行中的ASPX页面执行到一半的时候,浏览器中你关闭了这个页面,服务器端对应的这个页面的代码仍然在执行么?答案:除非你代码里面做了特殊判断,否则仍然正在执行。注意点: 1、客户端显示页面的时候,后台已经执行完了的页面对象早已经不存在了。当然这时候谈不上服务器段执行不执行的问题了。2、页面还没有返回,处于等待状态的时候。关闭ASPX页面,才会涉及到上面提到的服务器端仍然在执行的情况。3、客户端关闭的时候根本不向服务器发送指令。4、除非你代码里面做了特殊判断,这里的特殊判断指用 if(!Response.IsClientConnected) 来检测状态而用代码终止运行。下面的简单代 阅读全文
posted @ 2011-12-10 14:05 swjm119 阅读(189) 评论(0) 推荐(0) 编辑
摘要: 假设给我们一个泛型对象List<T>,T为int类型,要求我们使用该对象方法FindAll(Predicate<T> match)从中找出该List中的偶数,您如何实现? 说明一下:Predicate<T>是一个泛型委托,它的原型为public delegate bool Predicate<T>(T obj),该委托传入一个T类型对象,经逻辑判断后返回布尔值。委托 可能您首先想到的是用委托实现,实现方法如下: // 方法1 static void Method1(){ // 创建List<int>对象 List < int & 阅读全文
posted @ 2011-12-10 14:01 swjm119 阅读(276) 评论(0) 推荐(0) 编辑