C#
zengweiqiang
C#,ASP.NET
展开
-
DataSet、DataTable、DataView认识
ADO.NET 两个重要组件:DataSet(数据集)和数据提供程序。DataSet(数据集):1、是一个断开独立存放在于客户端内存中的一个临时数据库;2、是一个容器类,可包含一个或多个 DataTable(数据表)对象。 DataTable(数据表):1、是一个存储数原创 2009-11-26 08:27:00 · 778 阅读 · 0 评论 -
通共类注意事项
1、对调用者尽可能透明化、简单化2、对于功能尽可能单一、独立化,只封装同一操作的代码,如果功能比较大可以考虑逐层封装3、对于调用者,封装的内容必须保证正确性,做好相关的验证判断,或是和调用者进行对应的约定,对于约定内容进行验证,防止约定错误并提示调用者4、封装内容对于重要的判断,一般不考虑没匹配上并去做某种操作的情况,这样可能会让调用者的结果和预期的不一致,像这种情况得提示调用者。原创 2011-12-16 14:40:02 · 588 阅读 · 0 评论 -
winfom全局异常处理
/// /// 应用程序的主入口点。 /// [STAThread] static void Main() { //注册 Application.ThreadException += new ThreadExceptionEventHandler(App原创 2011-12-16 13:23:53 · 503 阅读 · 0 评论 -
批量插入oracle数据库
ODP技术,参数可以为数组注意事项1、时间处理 //防止数据库中有DATE类型的数据,不设置格式则会出现无效月份的情况,如:new OracleDate("2011-08-26 17:18:19"); OracleGlobalization og = OracleGlobalization.GetClientInfo();原创 2011-12-09 13:22:18 · 4053 阅读 · 0 评论 -
DateTime.ParseExact方法
参数说明CultureInfo.CurrentCulture获取当前线程的区域信息中,包括DateTimeFormat 日期显示格式(日期分隔符)和NumberFormat 货币。试例:1、时间中没有使用分割符的情况:string temp = "18991230" ;DateTime dateTemp = DateTime.ParseExact(temp, "yyyyM原创 2011-12-12 17:54:05 · 12286 阅读 · 0 评论 -
浮点类型运算精度丢失
C#中:100 * 149381.77 = 14938176.999999998 double类型 Convert.ToInt32((100 * 149381.77)) = 14938177 int类型浮点类型运算精度丢失原创 2011-09-20 17:34:04 · 539 阅读 · 0 评论 -
IDisposable 接口
虽然 .net 有垃圾回收机制(GC), 可自动进行大部分的资源清理工作,但开发人员仍旧应该养成良好的通过手动调用资源清理方法来进行资源回收的习惯, 让对象实现 IDisposable 接口正是 M$ 所推荐的, 该接口的原型为: // Summary: // Defines a method to release allocated unmanaged resources.转载 2011-11-03 15:28:41 · 720 阅读 · 0 评论 -
C#多线程与UI响应
一. 概述在使用C#进行应用程序设计时,经常会采用多线程的方式进行一些后台任务的工作。对于不同的应用场景,使用的策略也不尽相同。1. 后台循环任务,少量UI更新:例如批量上传文件,并提供进度。这种情况使用BackgroundWorker组件是非常好的选择。2. 耗时的后台任务:这里的耗时任务是指一个时间较长的任务,并且不能精确获取进度,如:调用转载 2011-10-27 17:42:09 · 798 阅读 · 0 评论 -
对象克隆
克隆分为:浅克隆和深克隆浅克隆:调用Clone方法实现只是多出一份引用,值还是只有一份,修改克隆出来的对象或原对象都会相互影响深克隆:须要克隆的类须实现ICloneable接口的Clone方法:在Clone方法中使用new来创建本身的一个新对象,然后对象调用Clone方法实现克隆多出一份全新的引用和值,修改克隆出来的对象或原对象都不会相互影响注意数组要实现深克隆一般使用原创 2011-10-27 18:08:57 · 458 阅读 · 0 评论 -
多线程安全
1、DataTable不支持线程安全,如果有多个线程同时更新DataTable中不同行时必须使用Lock(dataTable)锁定,保证线程安全2、多线程都要更新全局变量时必须使用Lock(变量)锁定,防止变量值错误3、线程执行完线程方法会自动结束,也可以线程方法中用Thread.CurrentThread.Abort();强行线程结束4、线程方法中的局部变量是不会相互影响5、如果原创 2011-10-27 18:23:51 · 1363 阅读 · 0 评论 -
从数据库读五十万数据到文件中
从数据库读五十成数据到文件中 ////////////////// 一个线程的情况 ////////////////******** 使用DataTable分段读取,内存使用比较大 *************2011-09-09 11:07:22,421原创 2011-09-20 17:56:44 · 667 阅读 · 0 评论 -
c#使用Word模版实现打印
c# Word 模版 打印最近一个项目需要用到C# Word打印,经过几天折腾,终于得到一个颇为完美的方案。新建一个Word操作类首先需要添加COM引用-------Microsoft Word 11.0 Object Library添加命名空间---------转载 2011-10-14 09:08:59 · 12601 阅读 · 1 评论 -
企业库数据库封装类使用
/// /// 批量查询手续费分成设置 /// public SfaCommroInfo GetSfaCommro(string fundId, string seatNo, string apkind) {原创 2011-07-18 15:36:34 · 758 阅读 · 0 评论 -
企业库数据通用操作封装中的参数类
using System;using System.Data;namespace Bosera.Common.DB{ /// /// 参数类,用于存储参数信息 /// public class DBParameter { publi原创 2011-07-18 15:34:43 · 562 阅读 · 0 评论 -
EnterpriseLibrary企业库中数据库封装
/* 创建者:[曾伟强] * 创建时间:2011年5月4日 * 类名: Bosera.Common.DB.DBCommon * 用途:数据库通用操作 */using System;using System.Data;using System.Data.原创 2011-07-18 15:33:29 · 2232 阅读 · 1 评论 -
静态方法使用
1、静态方法和实例方法是一样的,在类型第一次被使用时加载。调用的速度基本上没有差别。2、静态方法不用创建实例就可调用,比较简单从面向对象的角度上来说,在抉择使用实例化方法或静态方法时,应该根据是否该方法和实例化对象具有逻辑上的相关性,如果是3、就应该使用实例化对象 反之使用静态转载 2011-07-22 10:25:45 · 456 阅读 · 0 评论 -
JSON的序列化和反序列化
导读:JSON是专门为浏览器中的网页上运行的JavaScript代码而设计的一种数据格式。在网站应用中使用JSON的场景越来越多,本文介绍 ASP.NET中JSON的序列化和反序列化,主要对JSON的简单介绍,ASP.NET如何序列化和反序列化的处理,在序列化和反序列化对日期时间、集合、字典的处理。一、JSON简介JSON(JavaScript Object Notation,JavaSc转载 2012-03-19 10:44:09 · 843 阅读 · 0 评论