C#开发点滴记录
1.开发windows服务程序,不应该在程序中调用windform相关的方法与类库,会产生未知的异常,windows服务中是可以产生日志文件的,会生成在安装服务的当前路径下面,比如服务为D:/MyService.exe ,那么日志就会出现在该文件夹,启动服务 net start 服务名
2.C#去除字符串末尾空格和回车 Replace("\n", "").Replace(" ", "").Replace("\t", "").Replace("\r", "");
3.C#的三种程序运行方式,1.控制台程序:在所有任务执行完成后会自行退出,但只要还存有一个线程没有执行完,便会一直执行下去。若没有在执行的其他任务,且主线程执行到了末尾,则自动结束
2.windows Server:以服务的方式运行程序,即便程序中所有任务已经执行完毕,也不会自动停止服务,除非手动关闭服务。
3.winform应用程序:执行的程序包含应用程序界面,跟windows server类似,结束程序需要手动进行关闭,即使没有其他线程执行任何任务。
4.实时修改Appsetting的值,解决Appsetting值修改成功后再次读取未更新的问题
public void ModifyAppsetting(string key, string value)
{
System.Configuration.Configuration config = System.Configuration.ConfigurationManager.OpenExeConfiguration(System.Configuration.ConfigurationUserLevel.None);
config.AppSettings.Settings.Remove(key);
config.AppSettings.Settings.Add(key,value);
config.Save(ConfigurationSaveMode.Modified);
ConfigurationManager.RefreshSection("appSettings");//此语句是让下次读取Appsetting时,重新从硬盘读取
}
5.使用管理员权限运行程序(非手动)
程序集中右键属性-》安全性-》勾选《启用OnClick》->Properties中出现app.mainfest文件-》<requestedExecutionLevel level="asInvoker" uiAccess="false" />修改为<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />-》取消《启动OnClick》-》保存即可
6.计算分页总数算法 int totalPageNum = (totalRecord + pageSize - 1) / pageSize;
7.控制台等待退出
while (Console.ReadLine() != "quit")
{
Console.WriteLine();
continue;
}
8.泛型限制类型为int、double、byte等值类型的写法,以下做示例
public T Add<T>(int a,int b) where T:struct
{
T value = (T)(a+b);
return value;
}
最新文章
- 使用抓包工具SpyNet对你的网络进行监控
- zabbix 监控MySQL
- mysql sql语句为表批量增加字段
- php源码安全加密之PHP混淆算法.
- python日志浅析
- SQL Server遍历表的几种方法 转载
- 16 款最流行的 JavaScript 框架
- 如何在 Eclipse 中连接源码
- hiho_1066_并查集
- group by的SQL语句
- 大象的崛起!Hadoop七年发展风雨录
- C# 通用数据访问类(SqlHelper)
- linux 学习笔记 Linux内核的四大功能简介
- Largest product in a series
- WinForm、wpf、silverlight三者关系
- javascript 深入浅出 (未完成4-17)
- 002---第一个Hibernate示例
- vim/network/ssh
- jest &; puppeteer &; 单元测试 &; 集成测试
- 如何在Linux下写无线网卡的驱动【转】