All posts by 龙生
js中对url进行编码解码的函数
定义和用法 decodeURI() 函数可对 encodeURI() 函数编码过的 URI 进行解码。 语法
1 |
decodeURI(URIstring) |
参数 描述 URIstring 必需。一个字符串,含有要解码的 URI 或其他要解码的文本。 返回值 URIstring 的副本,其中的十六进制转义序列将被它们表示的字符替换。 实例 在本例中,我们将使用 decodeURI() 对一个编码后的 URI 进行解码:
1 |
<script type="text/javascript">var test1="http://www.w3school.com.cn/My first/"document.write(<code style="font-family: 'Courier New', monospace; color: rgb(0, 0, 255); ">encodeURI(test1)</code>+ "<br />")document.write(<code style="font-family: 'Courier New', monospace; color: rgb(0, 0, 255); ">decodeURI(test1)</code>)</script> |
输出:
1 |
http://www.w3school.com.cn/My%20first/http://www.w3school.com.cn/My first/ |
贴一下聚合函数在LinQ to Object和LinQ to DataSet中的用法
var member = new Member(); int recordCount; var memberInfos = member.Paging(20, 1, "MemberId DESC", "", out recordCount); var memberIdSum = memberInfos.Sum(c => c.MemberId); Response.Write(memberIdSum.ToString()); Response.Write("<br/>——————————————————-<br />"); var dbHelper = DbFactory.AccessSqlServer; var dbPaging = DBPaging.Create(dbHelper); var ds = […]
View DetailsLINQ TO DataSet Overview
相对而言,LINQ TO DataSet是LINQ技术中最小的一块,虽然是DB中抽取出来的一个离线的操作模型,但毕竟对象也是个内存里面的object而已。所以和LINQ TO Object相比,大多数的操作都是一样的,不同只是要根据DataSet,DataTable的结构标明字段而已。下面简单的列出LINQ TO DataSet相比LINQ TO Object一些要注意的特色。 Query UnTyped DataSet 和一般的LINQ相比,query对象是untyped DataSet的时候,使用Field<T>和SetField<T>来读写不同的column字段,下面是一个简单的例子: DataTable orders = ds.Tables["Orders"]; DataTable orderDetails = ds.Tables["OrderDetails"]; var query = from o in orders.AsEnumerable() where o.Field<DateTime>( "OrderDate" ).Year >= 1998 orderby o.Field<DateTime>( "OrderDate" ) descending select o; 在这里大致要注意三点 1.因为untyped DataSet没有实现IEnumerable<T> 和 IQueryable<T>的interface,所以如果想把它作为一个可以查询的对象的话,要先用AsEnumerable() 或者AsQueryable()转换一下,将它转换成IEnumerable<T>或者IQueryable<T>对象才能用LINQ去查询。如:from o in orders.AsEnumerable() 2.一般是使用使用Field<T>(“Column A”)和SetField<T>(“Column A”)来读写不同的column字段对应的element,用它来访问相对于以前我们用ds.Tables["Orders"].Row[“RowA”][ “Column A”]的访问模式比起来,一个很大的好处就是可以避免null类型产生的exception。我们以前从DataSet里面取数据的时候,如果取的出来的是null,就会抛出exception,所以我们经常作类似if(ds.Tables["Orders"].Row[“RowA”][ “Column A”]!=null)的判断来包装我们进一步的逻辑处理,但是用Field<T>(“Column A”)就可以避免这种麻烦。因为Field<T>(“Column A”)是nullable的。这个特性的由来是<T>这个泛型的使用,比如你取int类型数据的时候,如果你觉得它可能是null,那你就可以用Field<int?>(“Column A”)去取,这样就可以避免了exception的抛出。 3 .Field<T>和SetField<T>是使用并不局限在LINQ 的query当中,在程序的其他地方也能使用,可以用它去替代以前的我们访问DataSet的方式,例如:
1 |
<span style="background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: silver; "><font size="2">foreach( DataRow r in orderDetails.Rows ) {</font></span> |
1 |
<span style="background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: silver; "><font size="2"> if (r.Field<decimal>( "UnitPrice" ) < 10 ){</font></span> |
1 |
<span style="background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: silver; "><font size="2"> r.SetField<decimal>( "UnitPrice", 10 );</font></span> |
1 |
<span style="background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: silver; "><font size="2"> }</font></span> |
1 |
<span style="background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: silver; "><font size="2">}</font></span> |
Query Typed DataSet 这就更加简单了。对于定义了类型的DataSet,我们可以象查询内存中一般的object那样去查询它。例如:
1 |
<span style="background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: silver; "><font size="2">var query =</font></span> |
1 |
<span style="background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: silver; "><font size="2"> from o in ds.Orders</font></span> |
1 |
<span style="background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: silver; "><font size="2"> where o.OrderDate.Year >= 1998</font></span> |
1 |
<span style="background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: silver; "><font size="2"> orderby o.OrderDate descending</font></span> |
1 |
<span style="background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: silver; "><font size="2"> select new { o.OrderID, o.OrderDate,</font></span> |
1 |
<span style="background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: silver; "><font size="2"> Amount = o.GetOrder_DetailsRows().Sum(</font></span> |
1 |
<span style="background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: silver; "><font size="2"> od => od.UnitPrice * od.Quantity ) };</font></span> |
还有一个与untyped DataSet不同的地方是在查询它的时候不需要使用AsEnumerable() 或者AsQueryable()那样的转换方法了。因为所有定义好的DataSet都是继承了TypedTableBase<T>这个基类,而这个基类已经实现了IEnumerable<T>的interface Query DataSet中的relation DataSet当中有时候也是有relation的,和DB一样,例如在下面的DataSet中加入relation:
1 |
<span style="background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: silver; "><font size="2">DataTable orders = ds.Tables["Orders"];</font></span> |
1 |
<span style="background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: silver; "><font size="2">DataTable orderDetails = ds.Tables["OrderDetails"];</font></span> |
1 |
<span style="background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: silver; "><font size="2">ds.Relations.Add( "OrderDetails",</font></span> |
1 |
<span style="background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: silver; "><font size="2"> orders.Columns["OrderID"],</font></span> |
1 |
<span style="background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: silver; "><font size="2"> orderDetails.Columns["OrderID"]);</font></span> |
如果我们想像在LINQ […]
View DetailsLinq to DataSet
1.数据集( DataSet ) • DataSet 是更为广泛使用的ADO.NET 组件之一,它可以显式缓存不同数据源中的数据。 • 在表示层上DataSet 与GUI 控件紧密集成,以进行数据绑定。 • 在中间层上,它提供保留数据关系形状的缓存并包括快速简单查询和层次结构导航服务,从而可以减少对数据库的请求数。 2.查询数据集 • DataSet 虽然具有突出的优点,但其查询功能也存在限制。 • Select 方法可用于筛选和排序,GetChildRows和GetParentRow 方法可用于层次结构导航。 • 但对于更复杂的情况,开发人员必须编写自定义查询。这会使应用程序性能低下并且难以维护。 3.使用LINQ to DataSet • 使用LINQ to DataSet 可以更快更容易地查询在DataSet 对象中缓存的数据。 • 这些查询用编程语言本身表示,而不表示为嵌入在应用程序代码中的字符串。 • LINQ to DataSet 可使Visual Studio 开发人员的工作效率更高, 因为Visual Studio IDE 提供编译时语法检查、静态类型化和对 LINQ 的智能感知的支持。 • LINQ to DataSet 也可用于查询从一个或多个数据源合并的数据 这可以使许多需要灵活表示和处理数据的方案能够实现。 4.查询数据集 • 填充DataSet – XxxDataAdapter – LINQ to SQL •主要使用下面两个扩展类 – DataRowExtensions – DataTableExtensions • 查询支持 – 类型化数据集 – 非类型化数据集 5.启用LINQ to DataSet 功能 • 要求.NET Framework 3.5 • 引用System Data DataSetExtensions 程序集 […]
View DetailsLinQ&EF任我行(一)--LinQ to SQL (转)
LinQ家族五大成员:LinQ to Objects – 默认功能,用来实现对内存中集合对象的查询LinQ to SQL – 针对SQL Server的查询,它是一个带有可视化的操作界面的ORM工具LinQ to DataSet – 对强类型化或弱类型化的DataSet或独立的DataTable进行查询LinQ to Entity – 对实体框架中EDM定义的实体集合进行查询。LinQ to XML – 对XML文档进行查询创建等操作。 C#语法与LinQ相关的新增功能 1.隐式强类型变量在C#3.0中可以使用var关键字隐式定义强类型局部变量。 《图1》这里的var关键字定义变量与JavaScript定义变量看起来很像但二者有着本质的区别。JavaScript定义的变量是弱类型的变量,也可理解为是一种通用类型的变量,它可以容纳各种类型的值,还可以在运行过程中动态修改其中的内容类型。下面这种写法在JavaScript中是正确的:var obj = 3.14;obj = "hello world";C#中的var则是种强类型的变量,它在定义的时候会确定数据类型,分配内存空间。上面这两名代码在C#3.0中会报错,因为第一句已经把obj定义为double型的变量,第二句把字符串赋值给double是错误的操作。 隐式强类型并不能有效简化我的书写的代码,但当我们在用它来动态接收一些未知类型的数据的时候就显虽得很强大。在隐式强类型变量出现前,我们一般是使用object型变量来接收这种未知类型的数据的。 2.对象初始化这个功能可以有效简化类的getter和setter部份的代码,还可以只使用一行表达式语句实现对象的实例化与初始化操作。如定义实例类时可以使用如下代码,没有必要再把成员变量和属性分别定义了。public class LineItem{ public int OrderID { get; set; } public int ProductID { get; set; } public short Quantity { get; set; } public string QuantityPerUnit { get; set; } public decimal UnitPrice { get; set; } public float Discount { get; set; }} 实例化LineItem对象,并为它赋值var line3 = new LineItem { OrderID = 11000, ProductID = 61, Quantity = […]
View Detailsjs日期函数详解
Date (对象) Date 对象能够使你获得相对于国际标准时间(格林威治标准时间,现在被称为 UTC-Universal Coordinated Time)或者是 Flash 播放器正运行的操作系统的时间和日期。要使用Date对象的方法,你就必须先创建一个Date对象的实体(Instance)。 Date 对象必须使用 Flash 5 或以后版本的播放器。 Date 对象的方法并不是静态的,但是在使用时却可以应用于所指定的单独实体。 Date 对象的方法简介: ·getDate | 根据本地时间获取当前日期(本月的几号)·getDay | 根据本地时间获取今天是星期几(0-Sunday,1-Monday…)·getFullYear | 根据本地时间获取当前年份(四位数字) ·getHours | 根据本地时间获取当前小时数(24小时制,0-23)·getMilliseconds | 根据本地时间获取当前毫秒数·getMinutes | 根据本地时间获取当前分钟数·getMonth | 根据本地时间获取当前月份(注意从0开始:0-Jan,1-Feb…)·getSeconds | 根据本地时间获取当前秒数·getTime | 获取UTC格式的从1970.1.1 0:00以来的毫秒数·getTimezoneOffset | 获取当前时间和UTC格式的偏移值(以分钟为单位)·getUTCDate | 获取UTC格式的当前日期(本月的几号)·getUTCDay | 获取UTC格式的今天是星期几(0-Sunday,1-Monday…)·getUTCFullYear | 获取UTC格式的当前年份(四位数字)·getUTCHours | 获取UTC格式的当前小时数(24小时制,0-23)·getUTCMilliseconds | 获取UTC格式的当前毫秒数·getUTCMinutes | 获取UTC格式的当前分钟数·getUTCMonth | 获取UTC格式的当前月份(注意从0开始:0-Jan,1-Feb…)·getUTCSeconds | 获取UTC格式的当前秒数·getYear | 根据本地时间获取当前缩写年份(当前年份减去1900)·setDate | 设置当前日期(本月的几号)·setFullYear | 设置当前年份(四位数字)·setHours | 设置当前小时数(24小时制,0-23)·setMilliseconds | 设置当前毫秒数·setMinutes | 设置当前分钟数·setMonth | 设置当前月份(注意从0开始:0-Jan,1-Feb…)·setSeconds | 设置当前秒数·setTime | 设置UTC格式的从1970.1.1 0:00以来的毫秒数·setUTCDate | 设置UTC格式的当前日期(本月的几号)·setUTCFullYear | 设置UTC格式的当前年份(四位数字)·setUTCHours | 设置UTC格式的当前小时数(24小时制,0-23)·setUTCMilliseconds | 设置UTC格式的当前毫秒数·setUTCMinutes | 设置UTC格式的当前分钟数·setUTCMonth | 设置UTC格式的当前月份(注意从0开始:0-Jan,1-Feb…)·setUTCSeconds | 设置UTC格式的当前秒数·setYear | 设置当前缩写年份(当前年份减去1900)·toString | 将日期时间值转换成"日期/时间"形式的字符串值·Date.UTC | 返回指定的UTC格式日期时间的固定时间值 创建新的 Date 对象 语法:new Date();new Date(year [, month [, date [, hour [, minute [, second [, millisecond ]]]]]] );参数:year 是一个 0 到 99 之间的整数,对应于 1900 到 1999 年,或者为四位数字指定确定的年份;month 是一个 0 (一月) 到 11 (十二月) 之间的整数,这个参数是可选的;date 是一个 1 到 31 之间的整数,这个参数是可选的;hour 是一个 0 (0:00am) 到 23 (11:00pm) 之间的整数,这个参数是可选的; minute 是一个 […]
View Details不用windows安装盘安装64位win7或windows server 2008的方法(32位winpe下安装64位的办法)
首先备windows server 2008 r2镜像一个,PE程序(我用的是win2003 的pe光盘版,大家可以用U盘版的),32位bootsect.exe文件 1、解压windows到文件夹中(暂定windows文件夹吧),随便解压到除C盘外的盘符中 2、用winpe启动计算机,格式化C盘(因为我要把系统装在C盘里)。 3、将安装文件夹根目录的boot文件夹和bootmgr文件复制到C盘,在c盘中新建文件夹sources,将安装文件夹中sources文件夹中的boot.wim复制到新建的文件夹中,替换bootsect.exe(我用的是win7 32位 里的)文件(在boot文件夹中) 4、运行cmd 执行C:\boot\bootsect.exe /nt60 c: 5、再用刚才解压的64位的bootsect.exe覆盖掉32位的。 6、重新启动(硬盘启动)。 7、这时候你可以看到win7的启动界面和安装界面了,选择修复,选第一项,下一步,选择命令行。 8、输入c:回车del bootmgrdel bootdel sources(这些以后格式化也可)9、用命令行的方式进入解压的windows文件夹下的sources文件夹,输入setup.exe,OK到此为止现在windows就开始安装了。 转自:http://www.cnblogs.com/wenwuxianren/archive/2011/03/19/1988809.html
View Detailsjquery ui(五)日期选择器 datepicker
JQuery官方的Datepicker控件,可以很方便的使用,可以让用户很方便的在输入框上选择时间。 废话少说,先上实例 【代码】 <script> $(function() { $( "#datepicker" ).datepicker(); });</script> <p>Date: <input type="text" id="datepicker"></p> 【效果图】 下面介绍一下具体用法: 一、需要加载的js文件 (1)jquery.js (2)jquery.ui.core.js (3)jquery.ui.widget.js (4)jquery.ui.datepicker.js 二、html代码 需要一个用来加载datepicker控件的输入框 <input id = "date" type="text"/> 三、js代码 初始化函数:$(.selecter).datepicker() 【参数】 因为参数较多,把所有参数根据功能分成几组进行阐述 1、动画 duration 'normal' 设置日期控件展开动画的显示时间,可选是 "slow", "normal", "fast","代表立刻,数字代表毫秒数。 showAnim 'show' 设置显示、隐藏日期插件的动画的名称。 showOptions {} 如果使用showAnim来显示动画效果的话,可以通过此参数来增加一些附加的参数设置。 2、图片按钮 buttonImage "" 设置弹出按钮的图片,如果非空,则按钮的文本将成为alt属性,不直接显示。 buttonImageOnly false 是否把按钮安全显示成图片的样子 buttonText "…" 设置触发按钮的文本内容。 showOn 'focus' 设置什么事件触发显示日期插件的面板,可选值: focus, button, both(当为focus时,不显示图片按钮) 3、选中之后时间格式 dateFormat mm/dd/yy 设置日期字符串的显示格式。 dayNames ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'] 设置一星期中每天的名称,从星期天开始。此内容用于dateFormat时显示,以及日历中当鼠标移至行头时显示。 dayNamesMin ['Su', 'Mo', 'Tu', […]
View Details为开发者准备的 29 个顶级 CSS 工具和应用
当你需要编辑或改变网站设计时,CSS 起着重要的作用。 透过一些 CSS工具可以让新手开发人员和设计人员轻松地学习这门语言和它的功能。 今天,我们为你编制了30个有用的CSS工具和应用程序。使用下列工具,您将能够以任何顺序进行CSS属性的排序,能够将您的Photoshop图层转成CSS样式,可以创建自己的响应Web系统。希望你能从这些工具和应用中发掘对自己有用的内容。 1. Metro UI CSS Metro UI CSS 是一套实现了 Windows 8 的 Metro 风格界面的 CSS 框架。 2. CSScomb CSScomb 可使用指定的排序方法对 CSS 的属性进行排序,提供多种版本,包括: CSScomb Online CSScomb for Sublime Text 2 (Also in Package Control) CSScomb for Textmate CSScomb for Coda & Coda 2 CSScomb for Espresso 2 CSScomb for IntelliJIDEA/WebStorm/PyCharm CSScomb for Notepad++ CSScomb for Vim 3. CSS3Ps CSS3Ps 是一个免费的基于云端的 Photoshop 插件,用来将 PhotoShop 的图层转成用 CSS3 实现的方式,外观完全一致。您可以选择多个图层和图层组,一键转换。行程转换为CSS边框属性。内阴影,内发光,阴影,外发光转换成CSS的box- shadow属性。您可以在浏览器中看到的结果样式,并与其他人分享。它适用于Windows或Mac OS X和Photoshop CS3及更高版本。最重要的是,它是完全免费的! 4. ResponsiveAeon ResponsiveAeon 是一个HTML5/CSS3的框架,可以非常快速的创建响应的布局。它有一个网格系统是基于总1104px宽度12列,提供了3个非常容易理解的基本类供 使用。该框架使使用@mediaqueries的,支持任何尺寸的设备。除了网格系统,也有排版,列表,表格,按钮和表格的样式。 5. RefineSlide RefineSlide是一个轻量级(4KB压缩)的jQuery插件快速整合一个响应式的、基于图像滑块的效果到我们的网站。滑块使用CSS3转 换+ 3D变换(有JS备用)和有一堆有吸引力的转变。它有一个选项,以显示缩略图(自动格式化和响应)或箭头的导航(支持键盘操作)。 6. Photon Photon 是一个JavaScript库,实现了在三维空间中的任何元素添加简单的照明效果。为了制造出效果,它采用了WebKitCSSMatrix的对象 (WebKit是唯一支持的浏览器引擎)。光的角度可以定义,并随时更改所提供的功能。这是可能被点亮一个由一个或一组一次来定义对象,我们可以通过设置 的最大黑色+白色用法自定义的效果。 7. Gridpak Gridpak 的目的是实现了响应式的 Web 页面设计,提高您的工作流程,节省了时间。通过生成PNG图像,CSS和JavaScript,,让 […]
View Details