1、程序退出
Application.Exit(); 方法停止在所有线程上运行的所有消息循环,并关闭应用程序的所有窗口
Application.ExitThread() 方法退出当前线程上的消息循环,并关闭该线程上的所有窗口。
2、字典(dictionary)是一个集合,其中每个元素都是一个键/值对。常用于查找和排序的列表。Dictionary<[key],[value]>
3、File.Exists(strPath) :指定路径的文件是否存在
4、FileStream(path, FileMode.Open) 使用 FileStream 类对文件系统上的文件进行读取、写入、打开和关闭操作,但经常使用StreamReader或StreamWriter执行这些功能。这是因为FileStream类操作的是字节和字节数组,而Stream类操作的是字符数据。字符数据易于使用,但是有些操作,比如随机文件访问(访问文件中间某点的数据),就必须由FileStream对象执行。
StreamReader实现了抽象基类TextReader类,而StreamWriter实现了抽象基类TextWriter。分别用于对流的读取与写入。StreamReader(filestream,Encoding.UTF8) 以一种特定的编码从字节流中读取字符。
5、(Interface)在一个类里定义一个接口类型的属性有什么作用?
比如定义一个接口IAuthService,有个Login成员,是一个返回类型是C,参数类型是B的函数:C Login(Bb);
在类ClientPackage里定义了一个IAuthService类型的属性:publicstatic IAuthService AuthService { get; set; } why?
就是提供一个将当前ClientPackage类对象转换为AuthService类型的对象的属性,这样你可以直接通过该属性来调用接口中的方法。。
即:登录界面中UserInfouser = ClientPackage.AuthService.Login(txt_user.Text, txt_pswd.Text, ip,ClientCode); 其实调用的是接口的方法.
6、 IPAddress ipaddress= ipHost.AddressList[0]; 是否要去除ip.IsIPv6LinkLocal7、Path.Combine() :合并两个字符串
8、String.IsNullOrEmpty(stringvalue) 它使您能够同时测试 String 是否为空引用或其值是否为 Empty。如果 value 参数为空引用或空字符串(""),则为 true;否则为 false。
9、String.Format (String, Object) 将指定的 String 中的格式项替换为指定的 Object 实例的值的文本等效项。
String.Format (String, Object[]) 将指定 String 中的格式项替换为指定数组中相应 Object 实例的值的文本等效项。
例如:string.Format("{0:C}",0.2) 结果为:¥0.20 (英文操作系统结果:$0.20)
默认格式化小数点后面保留两位小数,如果需要保留一位或者更多,可以指定位数
string.Format("{0:C1}",23.15) 结果为:¥23.2 (截取会自动四舍五入)
string.Format("{0} = '{1}'", f.Name, value);//对应替换
10、(Serializable)序列化类UserInfo—Table("auth_user_info") Model模块中
[Serializable]要使一个类可序列化,最简单的方法是使用Serializable 属性对它进行标记,
[Table("auth_user_info")] 将某个类指定为与数据库表相关联的实体类。(要写相关属性TableAttribute,位于Data模块中)
public class UserInfo : BaseEntity
{
[PrimaryKey] //也有声明相应的属性,位于Data模块中
private string user_id;
private string department_id;
}
序列化是将对象状态转换为可保持或传输的形式的过程。序列化的补集是反序列化,后者将流转换为对象。这两个过程一起保证数据易于存储和传输。。序列化一个对象,然后使用 HTTP 通过 Internet 在客户端和服务器之间传输该对象。序列化是将对象处理为字节流以存储对象或传输到内存、数据库或文件。其主要目的是保存对象的状态,以便可以在需要时重新创建对象。
11、Timer m_Timer = new Timer { Interval = 1000 };
与Timer m_Timer = new Timer (); m_Timer.Interval = 1000; 等价
附:基础模块 Util.cs
1、转换方法: string VarToStr(object dataobj)转换为字符串 VarToCNMoney(double money) 转换为大写人民币方法
2、正则表达式匹配:Regex.Match(string input,string pattern) 返回 input 中与正则表达式模式匹配的第一个子字符串。eg:pattern=@"\b\w*z+\w*\b"
Match.NextMatch(); 获得下一个匹配项
匹配整数、浮点数、邮箱
3、安全,加密、解密:System.Security.Cryptography命名空间提供加密服务,包括安全的数据编码和解码,以及许多其他操作,例如散列法、随机数字生成和消息身份验证。更多参考:加密服务
CtyptoStream类:定义将数据流链接到加密转换的流。
DESCryptoServiceProvider类:定义访问数据加密标准 (DES) 算法的加密服务提供程序 (CSP) 版本的包装对象。