摘要:
实用前提:在winform程序中,通过主窗体的menu打开不同的窗体
我以前的做法:在menu的click事件中,创建打开窗体的对象实例
这样的缺点,我不说了:)
看看利用反射动态调用窗体对象的方法:
private void createform(string strname)
{
this.cursor = cursors.waitcursor;
string path......
摘要:
在数据库软件中,其核心就是对数据库记录进行查询添加修改及删除操作,这是非常关键的也是必须非常谨慎的去完成。在现有的程序中经常会有因为某些错误而造成数据丢失甚至是系统崩溃,这就对我们的程序提出了一个数据操作的错误处理要求。
例如在进行银行转帐处理时,我们先从转出帐号减掉要转出的金额,然后再在接收的帐号上加上相应的金额。如果一切处理ok,我们的钱能顺利到达接收帐号。但要是系统在执行接......
NET框架程序设计读书笔记(三)--执行程序集代码
1.4执行程序集代码
托管模块中包含着元数据与il代码.il是由微软在咨询了一些商业与学术上的语言编译器作者之后开发的一种独立于cpu的机器语言.il要比大多数cpu机器语言高级得多,它可以理解对象类型,并且拥有很多高级的指令,这些指令可以创建与初始化对象,调用对像上的虚方法以直接操作数组元素.它甚至还有抛出与捕获异常的指令.我们可以把il视 作一种面向对像的机器语言.
通常情况上,开发人员会使用一门高级语言,比如:c#或visual basic).这些语言的编译器産的将是il代码.当然,我们也可以直接以汇编语言的方法写il程序.微软也提供了一个il汇编器:ilasm.exe,另外还有一个反汇编器:ilddsm.exe .
c# 或者visual basic 等高级语言提供的都只是clr全部功能的一个子集. il汇编语言允许开发人员获取clr所有的功能.
总结il的特点如下:
1.面向对像特性,与其他汇编不同.
2.il可以获取clr所有的功能
3.il并不束缚于任何特定的cpu平台,也就是说他也可以夸平台.
.net程序执行过程如下:
1 一个方法执行之前,clr首先检测main中代码引用的所有类型,clr会分配一个内部的数据结构,该数据结构用于管理对所引用类型的访问.
2.当该数据结构被初始化时,clr将把每一个条目设置 为clr内部的一个没有正式记录的函数,我们暂且称该函数为 jitcompiler.
3.当main方法第一次调用引用的类型的方法成员时,jitcompiler函数将被调用,该函数负责将一个方法的il代码编译成本地cpu指令.
1. jitcompiler将前面第2步的数据结构中的要调用的真实方法的地址替换成包含刚刚编译好的cpu指令的内存块地址.
2. jitcompiler跳转到该内存块中的代码上,开始执行.
注意:一个类型的所有方法只会编译一次,当这个类型的方法又被调用时,将会使用之前已经编译过的代码,这样只有在首次调用时,才会产生性能损失.
也就是说托管代码跟非托管代码相比,性能上的损失是非常小的,近乎微不足道....
下一页 摘要:
在本篇文件中,我们将讨论编程人员在使用asp.net开发应用程序时需要注意的10个技巧,这些技巧涉及从缺省的控件、表单名的改变到stringbuilder类的使用,有助于编程人员能够尽快地适应.net环境。
1、在使用visual studio .net时,除直接或非引用的对象外,不要使用缺省的名字。
.net带来的好处之一是所有的源代码和配置文件都是纯文本文件,能够使用not......