易截截图软件、单文件、免安装、纯绿色、仅160KB

C# 3.0新特性系列:隐含类型var

一.神奇的var
  在C#3.0中增加了一个变量声明var,这个声明和JavaScript 的 var类似,但也有不同。
  1. 相同点,它可以用var来声明任何类型的局部变量。
  2. 不同点,它仅仅负责告诉编译器,该变量需要根据初始化表达式来推断变量的类型,而且只能是局部变量。
  二.相同点
  它可以声明
var integer = 10;
var name = "edisundong";
var numbers = new int[] { 1, 2, 3 };
  三.不同点
  var仅仅是一个关键字,它并不是C#3.0中的一种新的类型,而是负责告诉编译器,该变量需要根据初始化表达式来推断变量的类型,上面的语句相当于
int integer = 10;
string name = " edisundong ";
int[] numbers = new int[] { 1, 2, 3 };
  三.注意点
  1.在声明时必须同时赋值,因为声明依赖于赋值号右边的表达式,如果有下面的语句:
var integer;
integer = 10;
  编译时会报Implicitly typed locals must be initialized错误。
  2.在使用var声明一个局部变量后,它仍然具有强类型,可以做如下测试:
var integer = 10;
integer = " edisundong ";
  编译时会报Cannot implicitly convert type 'string' to 'int'错误。
  3. 初始化器表达式的编译期类型不可以是空(null)类型,编译器无法根据null来推断出局部变量的类型,如有下面的语句:
var integer = null;
  编译时会报Cannot assign '<null>' to an implicitly typed local错误。
  4. 初始化语句必须是一个表达式,初始化表达式不能包含它自身,但是可以是包含一个对象或集合初始化器的一个new表达式(即匿名类型)。
  如可以这样去声明:
var coll = new Hashtable();
  5. var的声明仅限于局部变量,也可以包含在foreach、for、using语句中。下面的使用是错误的:
class Program
{
 private var i = 10; //全局私有变量。
 static void Main(string[] args)
 { }
}
  编译时会报The contextual keyword 'var' may only appear within a local variable declaration错误。


相关文档:

C#数据库编程基础之sql语句操作数据库数据

        连接sql server数据库用到的命名空间是using System.Data.SqlClient;
  数据库连接代码:可以在大类之下声明 public SqlConnection myConnection;  //sql连接对象
               &nbs ......

c# 从XML读数据

C#
 DataSet ds = new DataSet();
ds.ReadXml(Server.MapPath("~/Config/User_yhlx_Jb.xml"));
DataView dv = ds.Tables[0].DefaultView;
//dv.RowFilter = "State=0";
this.DropDownList1.DataSource = dv;
this.DropDownList1.DataTextField = "text";
this ......

C#小Tip:Xml操作简明手册 2


2)如何创建一个xml文档
由于xml实质也只是一个文本文件,所以最简单你可以直接使用System.IO下的类生成一个文件,并存储成xml文件,当然,你需要手动保证该文件形式良好,比如必须有根元素、必须有关闭标签、必须正确嵌套等等。
 
如果你懒得自己去想文件的形式,可以使用System.Xml下的类。
 
Code
Xml ......

c# 支持XML序列化的泛型 Dictionary

/// <summary>
/// 支持XML序列化的泛型 Dictionary
/// </summary>
/// <typeparam name="TKey"></typeparam>
/// <typeparam name="TValue"></typeparam>
[XmlRoot("SerializableDictionary")]
public class SerializableDictionary<TKey, TValue& ......

《C#图解教程》读书笔记第16章——事件

这本书讲解
C#
语言十分详细,我将其中的重要内容整理成条款,以备忘。
1.      
事件是在满足某个特定条件时发生的,触发
(raise)
事件的对象称为发布者
(publisher)
,对这个事件进行响应的对象称为订阅者
(subscriber)
。事件处理程序是注册到事件的方法,可在任何类或者结构 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号