摘要:SharePoint Server 2010用来取代MOSS 2007,它有标准版和企业版两个版本,使用SQL Server数据库;早期版本中的STS或WSS在2010中更名为SharePoint Foundation;而SPS 2010包含了SharePoint Foundation和SharePoint Server。SharePoint Foundation和SharePoint Server的区别SharePoint Foundation是SharePoint的基础核心,而SharePoint Server只是为了增加更多进阶功能的可选择增加的组件。SharePoint Server不
阅读全文
摘要:今天群中有一朋友问我,“怎么把数据库数据转为extjs可用的json数据?”现在就把我自己写的一个方法公布下,希望可用帮到需要的朋友。 ///<summary> /// 返回easyui/extjs中datagrid使用的json格式 ///</summary> ///<param name="dt">datatable数据</param> ///<param name="count">总的条数</param> ///<returns></returns> p
阅读全文
摘要:方法一:js<html> <head> <link href="http://code.google.com/apis/maps/documentation/javascript/examples/default.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false&quo
阅读全文
摘要:本文将讲述C#中的Linq技术。一:linq是什么?linq可以理解为嵌入C#语法的强类型查询语言。(注意:尽管linq看起来和Sql查询很像,但语法却不相同。)二:linq的作用?提供一种统一且对称的方式,让程序员得到数据和操作数据(此处的数据可以是XML,DataSet,物理数据等)三:linq可应用在哪些场景?Linq to Object、Linq to XML、Linq to DataSet、Linq to Entities、Parallel Linq(并行处理linq查询返回的数据)linq的基本语法:var result = from item in container selec
阅读全文
摘要:可空类型可以表示所有实际类型的值加上null。如果和数据库打交道,这就会很有用,因为在数据库表中遇到未定义的列是很常见的事情。为了定义一个可空变量类型,应在底层数据类型中添加问号(?)作为后缀。注意,这种语法只对值类型是合法的,局部可空变量必须赋值一个初始值。//定义一些局部可空类型int? a =10;double? b=3.14;bool? c=null;char? d= 'a';int?[] e=new int?[2];//错误!字符串是引用类型string? s="zhxdean";??操作符,在获得的值实际上是null时,我们可以用这个操作符给一个
阅读全文
摘要:并发:个人认为分2类,一种程序上(由于大流量的访问同一共享数据引起),另一种数据库中(同时访问同一数据一起)。本文主要讨论的是前者的解决办法,第二种的解决方法可以使用数据库中锁和事务。同步访问共享资源的首选技术是C#的lock关键字。这个关键字允许定义一段线程同步的代码语句。后进入的线程不会中断当前线程,而是停止自身下一步执行,线程在进入锁定范伟的时候必须获得l标记。而比较安全(推荐的)的方式是声明私有的object成员来做为锁标示。//锁标示private object olock = new object();public void Print(){ lock(olock) { //...
阅读全文
摘要:try{//操作Response.Redirect("/mymaimai.aspx");}catch (Exception e){// 异常处理} 使用以上语句,不管是否有异常,都会执行catch中的,一直显示""失败"",都会抛出System.Threading.ThreadAbortException,原因如下: Response.End方法停止页的执行,并将该执行变换到应用程序的事件管线中的Application_EndRequest事件。Response.End后面的代码行将不执行。 此问题出现在 Response.Redir
阅读全文
摘要://删除商品分类操作//会将所有子类都删除【慎用】function DeleteItem(id) { if (window.confirm("是否删除?【删除当前项会将其所有子类一并删除】")) { //执行删除 $.ajax({ type: "POST", contentType: "application/json", url: "web路径/方法名", data: "{\"id\":"\" + id + "\"}", dataTy
阅读全文
摘要:1.创建DataTable 构建表 DataTable PCDT = new DataTable(); 数据类型不设置也可以 DataColumn dc0 = new DataColumn("PCID",typeof(int)); PCDT.Columns.Add(dc0); DataColumn dc1 = new DataColumn("PCName"); PCDT.Columns.Add(dc1); //设置主键 DataColumn[] dc = new DataColumn[1]; dc[0] = PCDT.Columns[0]; PCDT.P
阅读全文
摘要:using System.Net.Mail; try { MailMessage mailMessage = new MailMessage(); mailMessage.To.Add(email); mailMessage.From = new System.Net.Mail.MailAddress("发送邮箱"); mailMessage.Subject = Title; mailMessage.Body = Content; mailMessage.IsBodyHtml = true; mailMessage.BodyEncoding = System.Text.En
阅读全文
摘要:Directory 与 DirectoryInfo 区别前者继承System.Object,后者继承抽象类FileSystemInfo 前者是静态类,后者是非静态类,需要new创建实例 前者返回的类型是简单字符串,后者返回的是强类型如FileInfo using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.IO;namespace DirectoryInfo对象{ class Program { static void Main(string[] args) {
阅读全文
摘要:概念:序列化:持久化一个对象的状态到流的过程。反序列化:被持久化的数据到对象的过程。使用这技术,用最小花费来保存海量的数据using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.IO;using System.Runtime.Serialization.Formatters.Binary;using System.Runtime.Serialization.Formatters.Soap;using System.Xml.Serialization;namesp
阅读全文
摘要:通过本文,介绍下泛型的优势。在.NET平台最初发布时,程序员使用System.Collections命名空间下的ArrayList,HashTable,Queue,SortedList,Stack。但历史证明使用这些类型会导致问题。第一个问题:导致性能的下降。在操作数据结构时(如值类型),CLR必须执行大量的内存转换操作(装箱/拆箱),这回降低运行时的执行速度。int a = 25;//将int装箱为object应用object boxeda=a;//将引用拆箱为对应的intint unboxeda=(int)boxeda;这段代码,在内存中会发生如下过程:1.在栈上分配a=25;2.在托管堆
阅读全文
摘要:一,哈希表(HashTable)简述 在.NET Framework中,Hashtable是System.Collections命名空间提供的一个容器,用于处理和表现类似key/value的键值对,其中key通常可用来快速查找,同时key是区分大小写;value用于存储对应于key的值。Hashtable中key/value键值对均为object类型,所以Hashtable可以支持任何类型的key/value键值对.二,哈希表的简单操作在哈希表中添加一个key/value键值对:HashtableObject.Add(key,value);在哈希表中去除某个key/value键值对:Hasht
阅读全文
摘要:正则表达式语法表示的字符类\d 从0~9的任一数字\D 非数字字符\w 任一单词字符,如A-Z、a-z、0-9和下划线字符\W 非单词字符\s 任一空白字符,包括了制表符,换行符,回车符\S 任一非空白字符. 任一字符[...] 括号中的任一字符[^...] 非括号中的任一字符指定匹配位置^ 其后的模式必须在字符串的开始处$ 前面的模式必须在字符串的末尾处\A 前面的模式必须在字符串的开始处,多行标志被忽略\z 前面的模式必须在字符串的末尾处,多行标志被忽略\Z 前面的模式必须位于字符串的末尾,或是位于换行符前\b 匹配一个单词边界\B 匹配一个非单词边界的位置,不在一个单词的开始指定重复字符
阅读全文
摘要:Stringbuilder类是直接用于字符串操作的类,打个比方把(1)string aa="123456";(2)aa+="789";(3)StringBuilder text=new StringBuilder("123456",12);(4)text.Append("789");如果你输出aa,和text 你会发现他们的输出内容是一样的。但是aa的操作过程实际上是:首先在内存中分配一个地址空间,空间大小是6。然后执行 aa+="789";的操作,该过程是连接字符串,“123456”和“789
阅读全文
摘要:一、C#抽象类:C#抽象类是特殊的类,只是不能被实例化;除此以外,具有类的其他特性;重要的是抽象类可以包括抽象方法,这是普通类所不能的。抽象方法只能声明于 抽象类中,且不包含任何实现,派生类必须覆盖它们。另外,抽象类可以派生自一个抽象类,可以覆盖基类的抽象方法也可以不覆盖,如果不覆盖,则其派生类必须 覆盖它们。二、C#接口:C#接口是引用类型的,类似于类,和抽象类的相似之处有三点:1、不能实例化;2、包含未实现的方法声明;3、派生类必须实现未实现的方法,抽象类是抽象方法,接口则是所有成员(不仅是方法包括其他成员);另外,接口有如下特性:接口除了可以包含方法之外,还可以包含属性、索引器、事件,而
阅读全文
摘要:一:概念const 关键字用于定义常量。它在赋初始值后不能被修改。常量字段是隐式静态的。不允许在常数声明中使用 static 修饰符。readonly 关键字是只读字段数据。和常量相似,不能在赋初始值后改变。和常量不同的是只读字段可以在运行时决定,因此在构造函数作用域中进行赋值时合法的(其他地方不行)。static readonly 静态只读字段,只读字段不是隐式静态的,所以要在类级别公开,就必须显式使用static关键字。二:区别1.const是一个包含不能修改的值的变量,是在编译时可被完全计算的表达式。因此不能从一个变量中提取的值来初始化常量。如果 const int a = b+1;b是
阅读全文
摘要:C#的类中可以包含两种方法:C#静态方法与非静态方法。那么他们的定义有什么不同呢?他们在使用上会有什么不同呢?让我们来看看最直观的差别:使用了static 修饰符的方法为静态方法,反之则是非静态方法。比较一、C#静态成员:静态成员属于类所有,非静态成员属于类的实例所有。每创建一个类的实例,都会在内存中为非静态成员新分配一块存储;静态成员属于类所有,为各个类的实例所公用,无论类创建了多少实例,类的静态成员在内存中只占同一块区域。比较二、C#静态方法C#静态方法属于类所有,类实例化前即可使用。非静态方法可以访问类中的任何成员,静态方法只能访问类中的静态成员。因为静态方法在类实例化前就可以使用,而类
阅读全文
摘要:ref 通常我们向方法中传递的是值.方法获得的是这些值的一个拷贝,然后使用这些拷贝,当方法运行完毕后,这些拷贝将被丢弃,而原来的值不将受到影响.此外我们还有其他向方法传递参数的形式,引用(ref)和输出(out). 有时,我们需要改变原来变量中的值,这时,我们可以向方法传递变量的引用,而不是变量的值.引用是一个变量,他可以访问原来变量的值,修改引用将修改原来变量的值.变量的值存储在内存中,可以创建一个引用,他指向变量在内存中的位置.当引用被修改时,修改的是内存中的值,因此变量的值可以将被修改.当我们调用一个含有引用参数的方法时,方法中的参数将指向被传递给方法的相应变量,因此,我们会明白,为什么
阅读全文