读书《项目中的.Net》(1)
来源:互联网 发布:数据库第四版课后答案 编辑:程序博客网 时间:2024/06/15 17:14
WinFrom中添加全局异常处理
在Main中添加
ThreadExceptionHandler handler = new ThreadExceptionHandler();Application.ThreadException += new ThreadExceptionEventHandler( handler.Application_ThreadException);System.Windows.Forms.Application.Run(new Form1());
同时增加异常处理类
internal class ThreadExceptionHandler { /// /// Handles the thread exception. /// public void Application_ThreadException( object sender, ThreadExceptionEventArgs e) { try { // Exit the program if the user clicks Abort. DialogResult result = ShowThreadExceptionDialog( e.Exception); if (result == DialogResult.Abort) Application.Exit(); } catch { // Fatal error, terminate program try { MessageBox.Show("Fatal Error", "Fatal Error", MessageBoxButtons.OK, MessageBoxIcon.Stop); } finally { Application.Exit(); } } } /// /// Creates and displays the error message. /// private DialogResult ShowThreadExceptionDialog(Exception ex) { string errorMessage = "Unhandled Exception:\n\n" + ex.Message + "\n\n" + ex.GetType() + "\n\nStack Trace:\n" + ex.StackTrace; return MessageBox.Show(errorMessage, "Application Error", MessageBoxButtons.AbortRetryIgnore, MessageBoxIcon.Stop); } }
.Net开发过程中的一些细节
equals()和运算符==的区别
==比较的是两个变量的值是否相等,对于引用型变量表示的是两个变量中存储的内存地址是否相同
equals()是两个变量是否是对同一个对象的引用,即比较内存地址所指对象的内容的比较
const和readonly的区别
const是编译时的常量,readonly是实例创建后(运行时)的常量
对任何const的常量修改后,都要对整个项目进行重新编译,而对readonly的计算方式修改后,只需要重新编译该类库即可
class和struct的区别
struct是值类型,它的相关结构均继承于System.ValueType类,它本身存储了值,而不包含指向值的指针
class是引用类型,它继承于System.Object类,它本身不包含值,只存储指向值的指针
如果类型只表示数据的时候,可以考虑使用struct,相比class,它具有更高的效率
string和StringBuilder的区别
string是值类型,其长度和内容是不可变的,任何对string变量的操作,都相当于创建新的对象
StringBuilder是可变的字符串动态操作类
StringBuilder在执行字符串操作时的效率是string的几百倍,因此,日常开发中应尽量使用StringBuilder而非string
- 读书《项目中的.Net》(1)
- ASP.NET 设计模式 读书摘记1
- 项目中的.NET
- 项目中的.NET
- .net 中的开源项目
- 读书中的无奈
- 读书1
- 读书时间 (1) 正在流行中的书
- 软件项目管理读书体会
- ASP.NET项目开发中的工厂模式
- ASP.NET项目开发中的异常处理
- ASP.NET项目开发中的异常处理
- 《项目中的.net》之C#自学笔记
- ASP.NET项目开发中的异常处理
- 项目中的.net 李天平 2012.08 勘误
- .NET项目中的AssemblyInfo文件的作用
- 数据结构在.net加密解密反流程混淆中的应用[看雪学院2006金秋读书季]
- 数据结构在.net加密解密反流程混淆中的应用[看雪学院2006金秋读书季]
- W5100E01-AVR (W5100评估板) 演示手册(一)
- 令人吐血的IE JS兼容性问题。。。
- CSDN是你的电脑桌 云脉网是你的床
- 使用MFC 发送消息模拟按钮按下事件
- 数据库操作语句(sql)
- 读书《项目中的.Net》(1)
- 无线传输控制项目(四川达钢)实例
- 关于 jquery ajax 上传数组类型数据
- ThinkPHP网站移植打开显示空白,错误330
- poi总结
- android x86虚拟机 网络正确配置
- Eclipse进行可视化的GUI开发3大GUI插件
- 强制性锁建议性锁
- Spring 中的default-lazy-init="true" 和 lazy-init="true"