KeyPress>KeyDown>KeyUp
并发:一个人"同时"做多件事,吃米饭,吃蔬菜,吃牛肉。
并行:多个人"同时"做多件事,两个人吃米饭,吃蔬菜,吃牛肉。
并行:多个人"同时"做多件事,两个人吃米饭,吃蔬菜,吃牛肉。
1,提供一个一致的面向对象的编程环境
2,提供一个将软件部署和版本控制冲突最小化的代码执行环境
3,提供一个可提高代码执行安全性的代码执行环境
4,提供一个可消除脚本环境或解释环境的性能问题的代码执行环境
5,使开发人员的经验在面对类型不大相同的应用程序时保持一致
6,按照工业标准生成所有通信,以确保基于.NET Framwork代码可与任何代码集成
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 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)
!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]);
}
{
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;
using System.Diagnostics;
Stopwatch watch = new Stopwatch();
watch.Start();
Funcation
watch.Stop();
string time = watch.ElapsedMilliseconds.ToString();
MsgBox.Show(time);
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;
}
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法则:每个单词的首字母都大写,多用于类或着方法
Pascal法则:每个单词的首字母都大写,多用于类或着方法
\n换行
var 声明的时候必须赋值
public string ShowStandardPrice
{
get
{
return StandardPrice.ToString("F4"); //显示decimal类型的字段位数
}
}
{
get
{
return StandardPrice.ToString("F4"); //显示decimal类型的字段位数
}
}
property.PropertyType.IsGenericType 判断当前的值是否为泛型类型
Hi,
Tomorrow!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)