2011年6月22日
摘要: 首先将网页内容整个抓取下来,数据放在byte[]中(网络上传输时形式是byte),进一步转化为String,以便于对其操作,实例如下:private static string GetPageData(string url){ if (url == null || url.Trim() == "") return null; WebClient wc = new WebClient(); wc.Credentials = CredentialCache.DefaultCredentials; Byte[] pageData = wc.DownloadData(url); r 阅读全文
posted @ 2011-06-22 17:12 AlvinXiao 阅读(545) 评论(0) 推荐(0) 编辑
  2011年6月16日
摘要: WriteDSToCsv 传入dataset生成csv文件 #region WriteDSToCsv 传入dataset生成csv文件 public void WriteDSToCsv(DataSet ds) { string strFile=""; string path=""; DataTable dt=ds.Tables[0]; //文件信息设置 strFile=strFile+"LogBackUp"; strFile=strFile+DateTime.Now.ToString("yyyyMMddhhmmss" 阅读全文
posted @ 2011-06-16 13:30 AlvinXiao 阅读(389) 评论(0) 推荐(0) 编辑
摘要: 导出EXCLEResponse.Clear();Response.ClearHeaders();Response.BufferOutput = false;Response.ContentType = "application/ms-excel";Response.AppendHeader("Content-disposition", "attachment;filename=" + HttpUtility.UrlEncode("AppointmentOrders_" + ddl_MCList.SelectedIt 阅读全文
posted @ 2011-06-16 13:22 AlvinXiao 阅读(580) 评论(0) 推荐(0) 编辑
摘要: 做笔记,以防自己忘记~~ JS获取事件event,不同浏览器有不同的做法。例如IE下,在js函数中,通过window.event就可以获取,不必在函数中添加什么参数。 也可以用Prototype或者JQuery等,它们有他们对事件的包装。还是使用JS库比较好,不然就有下边的麻烦。Firefox:要传递参数<head><script> function click1(event,str1){ alert(event+str1); }</script></head><body><input type="button&quo 阅读全文
posted @ 2011-06-16 11:27 AlvinXiao 阅读(1078) 评论(1) 推荐(0) 编辑
  2011年6月15日
摘要: 之一------(函数的劫持与对象的复制)关于对象的继承,一般的做法是用复制法: Object.extend 见protpotype.js 的实现方法: Object.extend = function(destination, source) ...{ for (property in source) ...{ destination[property] = source[property]; } return destination; } 除此以外,还有一种不太常见的方法: Function.apply. apply 方法能劫持(<<Ajax in Action>> 阅读全文
posted @ 2011-06-15 10:21 AlvinXiao 阅读(12181) 评论(7) 推荐(12) 编辑
摘要: 因为继续研究Ajax Framework的原因,更多的接触了call和apply。故再次论述call和apply,1)无疑关于call,最简单的解释就是:把隐藏的第一个参数显示化。因为通常一个函数(Function)的调用,会有一个额外的隐藏参数,就是函数(Function)所属的对象(如果没有所特指,则为global(如window)对象),在函数内你可用this关键字访问之。从call的构造式 -- call(thisArg[,arg1,arg2…] ]);可看出call(apply)方法可将一个函数的对象上下文(Function Context)从初始的上下文改变为由 thisObj 指 阅读全文
posted @ 2011-06-15 10:20 AlvinXiao 阅读(709) 评论(0) 推荐(0) 编辑
  2011年6月14日
摘要: 浏览器iefirefoxoperasafarichrome你知道世界上有多少种浏览器吗?除了我们熟知的IE, Firefox, Opera, Safari四大浏览器之外,世界上还有近百种浏览器。几天前,浏览器家族有刚诞生了一位小王子,就是Google推出的Chrome浏览器。由于Chrome出生名门,尽管他还是个小家伙,没有人敢小看他。以后,咱们常说浏览器的“四大才子”就得改称为“五朵金花”了。在网站前端开发中,浏览器兼容性问题本已让我们手忙脚乱,Chrome的出世不知道又要给我们添多少乱子。虽然说现在有一些WEB技术(AJAX、ExtJS等)已经帮我们处理不同浏览器的兼容问题,但是有时候自己 阅读全文
posted @ 2011-06-14 17:48 AlvinXiao 阅读(298) 评论(0) 推荐(0) 编辑
摘要: with 语句 为一个或一组语句指定默认对象。用法:with (<对象>) <语句>;with 语句通常用来缩短特定情形下必须写的代码量。在下面的例子中,请注意 Math 的重复使用:x = Math.cos(3 * Math.PI) + Math.sin(Math.LN10);y = Math.tan(14 * Math.E);当使用 with 语句时,代码变得更短且更易读:with (Math) { x = cos(3 * PI) + sin(LN10); y = tan(14 * E);}this 对象 返回“当前”对象。在不同的地方,this 代表不同的对象。如 阅读全文
posted @ 2011-06-14 13:49 AlvinXiao 阅读(307) 评论(0) 推荐(0) 编辑
摘要: 对于document.compatMode,很多朋友可能都跟我一样很少接触,知道他的存在却不清楚他的用途。今天在ext中看到document.compatMode的使用,感觉这个对于我们开发兼容性的web页面还是很有帮助。我们都知道,IE对盒模型的渲染在StandardsMode和QuirksMode是有很大差别的,在StandardsMode下对于盒模型的解释和其他的标准浏览器是一样,但在QuirksMode模式下则有很大差别,而在不声明Doctype的情况下,IE默认又是QuirksMode。所以为兼容性考虑,我们可能需要获取当前的文档渲染方式。document.compatMode正好派 阅读全文
posted @ 2011-06-14 11:03 AlvinXiao 阅读(479) 评论(0) 推荐(0) 编辑
  2011年6月13日
摘要: 将oledb读取的excel数据快速插入的sqlserver中,很多人通过循环来拼接sql,这样做不但容易出错而且效率低下,最好的办法是使用bcp,也就是System.Data.SqlClient.SqlBulkCopy 类来实现。不但速度快,而且代码简单,下面测试代码导入一个6万多条数据的sheet,包括读取(全部读取比较慢)在我的开发环境中只需要10秒左右,而真正的导入过程只需要4.5秒。using System;using System.Data;using System.Windows.Forms;using System.Data.OleDb;namespace WindowsApp 阅读全文
posted @ 2011-06-13 16:13 AlvinXiao 阅读(478) 评论(0) 推荐(0) 编辑