Asp.net &C#开发中的一些注意事项及小技巧

1、构造函数不能带返回值类型,因为构造函数返回就是对象本身。
2、将字符串转换成日期类型,用DateTime.Parese()或DateTime. ParseExact ()函数。
3、if(!Page.IsPostback){}
使用该函数,使网页仅在第一次加载时运行函数体的内容,在Page_Load()事件中,通常可用于初始化。如果不使用该函数,则可能会在一些控件回传时再次运行if()函数体内的内容,导致相关控件修改后的值没有正确应用。
4、 GridView的字段(BoundField)有一个属性HtmlEncode。这个属性用于将HTML进行包装,如果为true(默认值),则原样显示字段内的内容。如果为false,则将字段内相应的HTML标签进行渲染。因此,要使字段内的图片链接显示出来,应设置HtmlEncode= “true”。
5、网页中获取日期后进行格式化的方法:Eval("wtDate", "{0:yyyy-MM-dd}")
但在DateTime.Now.Date.ToString("yyyy-MM-dd") 中的字符串格式化却有所不同。
6、NVarChar数据类型,在SQL SERVER 2005中具有NVarChar(max)类型来代表最大为2^32 的数字,但是在.net2.0中并不支持这个类型,NVarChar最大能表示的数仍为4000字节。
7、将字符串类型转换为Guid类型,可将字符串作为Guid构造函数的参数进行传递。
如: Guid gd = New Guid(string);
Guid类型的空值为Guid.Empty ,而非null。
8、最好对各字段都存储值,即便不使用,也就进行初始设置,以避免为空值时,出现数据类型不匹配现象,如DateTime,uniqueIdentifier字段,取出空值进行处理时会带来麻烦。
9、对记录数进行统计,使用类似下面的语句:
int cout =(int)cmd.ExecuteScalar();
10、存储过程中,通配符与参数结合使用,要采用字符串加法,而不能直接放在参数两侧,如下:
 WHERE RTRIM(f.ftTitle) LIKE '%'+RTRIM(@searchkey)+'%'
11、要获取list<T>对象中某个项的值,可采用如下方法:
如List<ftInfo> CurrentFault = new List<ftInfo>();//创建一个对象
 假设ftInfo类中定义了ftIsResovled属性,那么,要获取CurrentFault的第0项的ftIsResolved值,可通过语名: CurrentFault[0].ftIsResolved 来获得。
12、 Input控件中包含有标签的内容(如)时,可能会有如下因为安全问题引起的错误:说明: 请求验证过程检测到有潜在危险的客户端输入值,对请求的处理已经中止。该值可能指示危及应用程序安全的尝试,如跨站点的脚本攻击。通过在 Page 指令或 配置节中设置 validateRequest=false 可以禁用请求验证。但是,在这种情况下,强烈建议应用程序显式检查所有输入。
13、显示带有HTML标记的字段内容,如果需要渲染HTML标签,可以设置htmlencode属性为true。设置为false时,字段内的HTML标签将按普通字符显示。也可以使用HtmlEncode()方法来渲染字段内容的HTML标签。
14、 LoginStatus控件可以方便地显示登录状态,并且提供登录和注销的快捷链接。但有时并不方便,特别是注销的同时要退出框架网页时,使用该控件就显得力不从心。可以直接使用LinkButton控件,在点击事件中,添加如下两句,就可以实现注销的同时跳转到框架网页的父窗口:
FormsAuthentication.SignOut();
Response.Write("<script language=javascript> window.open('../Default.aspx',target='_top')</script>");
 
15、C#中关闭窗口:
Response.Write("<script language:javascript>javascript:window.close();</script>");
技术基础 New Folder 多样式星期名字转换 [Design, C#] .NET关于string转换的一个小Bug Regular Expressions 完整的在.net后台执行javascript脚本集合 ASP.NET 中的正则表达式 常用的匹配正则表达式和实例 经典正则表达式 delegate vs. event 我是谁?[C#] 表达式计算引擎 正式发布表达式计算引擎WfcExp V0.9(附源码) 运算表达式类的原理及其实现 #实现的18位身份证格式验证算法 身份证15To18 的算法(C#) 一组 正则表达式 静态构造函数 忽略大小写Replace效率瓶颈IndexOf 随机排列算法 理解C#中的委托[翻译] 利用委托机制处理.NET中的异常 与正则表达式相关的几个小工具 你真的了解.NET中的String吗? .NET中的方法及其调用(一) 如何判断ArrayList,Hashtable,SortedList 这类对象是否相等 帮助解决网页和JS文件中的中文编码问题的小工具 慎用const关键字 装箱,拆箱以及反射 动态调用对象的属性和方法——性能和灵活性兼备的方法 消除由try/catch语句带来的warning 微软的应试题完整版(附答案) 一个时间转换的问题,顺便谈谈搜索技巧 .net中的正则表达式使用高级技巧 (一) C#静态成员和方法的学习小结 C#中结构与类的区别 C#中 const 和 readonly 的区别 利用自定义属性,定义枚举值的详细文本 Web标准和ASP.NET - 第一部分 XHTML介绍 在ASP.NET页面中推荐使用覆写(Override)而不是事件处理(Event Handler) 常用编码工具类,支持base64,md5,des,crc32 也谈谈技术面试 在C#里把ArrayList转换为Array 或 把Array转换为ArrayList C# 2.0 在.NET 2.0中,让你的组件也可以绑定 .NET20 一种简单的窗口控件UI状态控制方法 翻译MSDN文章 —— 泛型FAQ:最佳实践 Visual C# 3.0 新特性概览 C# 2.0会给我们带来什么 泛型技巧系列:如何提供类型参数之间的转换 C#2.0 - Object Pool 简单实现 Attributes in C# 手痒痒,也来个c# 2.0 object pool 泛型技巧系列:用泛型打造可复用的抽象工厂 体验.net2.0的优雅(四):Provider、策略、控制反转和依赖注入 泛型最佳实践 asp.net 2.0下嵌套masterpage页的可视化编辑 C# 2.0与泛型 动态调用对象的属性和方法——性能和灵活性兼备的方法 泛型技巧系列:用泛型打造可复用的抽象工厂 泛型技巧系列:如何提供类型参数之间的转换 .NET 2.0 泛型Quiz Visual Studio 2005体验泛型编程 C++ 泛型编程系列讲座之实施 泛型技巧系列:简单类型选择器 C# 泛型简介 我眼中的C#2.0新功能特性 泛型技巧系列:避免基类及接口约束 New Article 不该用Generics实现Abstract Factory的理由 C#2.0-泛型 C#2.0-extern C#2.0-可空类型 C#2.0-分部类 C#2.0-迭代器 C#2.0 的新增功能学习 泛型的序列化问题 .NET 2.0 泛型在实际开发中的一次小应用 C#2.0 Singleton 的实现 .Net Framwork 强类型设计实践 通过反射调用類的方法,屬性,字段,索引器(2種方法) ASP.NET: State Server Gems 完整的动态加载/卸载程序集的解决方案 从NUnit中理解.NET自定义属性的应用(转载) 如何在.NET中实现脚本引擎 (CodeDom篇) .NET的插件机制的简单实现 我对J2EE和.NET的一点理解 难分难舍的DSO(一) InternalsVisibleToAttribute,友元程序集访问属性 Essential .NET 读书笔记 [第一部分] NET FrameWork的Collections支持 .NET的反射在软件设计上的应用 关于跨程序集的反射 实现C#和VB.net之间的相互转换 深入剖析ASP.NET组件设计]一书第三章关于ASP.NET运行原理讲述的补白 asp.net 运行机制初探(httpModule加载) 利用反射来查看对象中的私有变量 关于反射中创建类型实例的两种方法 ASP.Net应用程序的多进程模型 NET委托:一个C#睡前故事 [推荐] - [原创] Microsoft .NET策略及框架概述 卸载Class? Web Form 窗体 如何实现web页面的提
相关推荐
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页