KeyPress>KeyDown>KeyUp
 
并发:一个人"同时"做多件事,吃米饭,吃蔬菜,吃牛肉。
并行:多个人"同时"做多件事,两个人吃米饭,吃蔬菜,吃牛肉。
 
1,提供一个一致的面向对象的编程环境
2,提供一个将软件部署和版本控制冲突最小化的代码执行环境
3,提供一个可提高代码执行安全性的代码执行环境
4,提供一个可消除脚本环境或解释环境的性能问题的代码执行环境
5,使开发人员的经验在面对类型不大相同的应用程序时保持一致
6,按照工业标准生成所有通信,以确保基于.NET Framwork代码可与任何代码集成

DataTable
//string类型转换成datetime
string datetime = dr["CreatedOn"].ToString();
model.CreatedOn = DateTime.ParseExact(datetime, "yyyy-MM-dd HH:mm:ss", null);   yyyy-MM-dd HH:mm:ss   转换成时间格式,注意各字母大小写
 
string appPath = AppDomain.CurrentDomain.BaseDirectory + "NCDB.db";  //相对路径
!string.IsNullOrEmpty(txtCostCenterCode.Text)
 
C:\ProgramData\Microsoft Visual Studio\10.0
 
dt.Rows.Count   判断datatable是否含有数据

 public List<udt_mm_ComReceiveMat_Detailed> DQueryNow(string strWhere, int PageID)
        {
            StringBuilder strSql = new StringBuilder();
            strSql.Append("Select * From  udt_mm_ComReceiveMat_Detailed AS D inner join ( select Key_ID,WF_Config_ID from udt_mm_WFCurrent where PU_ID between 1007 and 1009) AS T ON D.GID=T.Key_ID ");
            strSql.Append("where 1=1 and T.WF_Config_ID IN( select ID from udt_mm_WFConfigure where Menu_Id=" + PageID + ") " + strWhere + " ");
            var dt = DBFactory.Default.QuerySql(strSql.ToString()).Dataset.Tables[0];
            if (dt.Rows.Count == 0)
                return new List<udt_mm_ComReceiveMat_Detailed>();
            else
                return EntityBase.ToList<udt_mm_ComReceiveMat_Detailed>(DBFactory.Default.QuerySql(strSql.ToString()).Dataset.Tables[0]);
        }
 
查看一个函数执行所需的时间
using System.Diagnostics;
   Stopwatch watch = new Stopwatch();
                    watch.Start();
Funcation
                    watch.Stop();
                    string time = watch.ElapsedMilliseconds.ToString();
                    MsgBox.Show(time);

OR
     //DateTime now = DateTime.Now;
     //MessageBox.Show("初始化服务!" + (DateTime.Now - now).TotalSeconds);
            
比较两个时间大小 
                DateTime t1 = Convert.ToDateTime(dpBegin.SelectedDate);
                DateTime t2 = Convert.ToDateTime(dpEnd.SelectedDate);
                int compNum = DateTime.Compare(t1, t2);  //compNum==0时间相等
                if (compNum > 0)
                {
                    MsgBox.Show("开始时间不能大于结束时间");
                    return;
                }
Camel法则:单词中,首单词的首字母小写,其余每个单词的首字母大写,多用于变量
Pascal法则:每个单词的首字母都大写,多用于类或着方法

\n换行
var  声明的时候必须赋值
 public string ShowStandardPrice
        {
            get
            {
                return StandardPrice.ToString("F4"); //显示decimal类型的字段位数
            }
        }
property.PropertyType.IsGenericType   判断当前的值是否为泛型类型