微软面试题.docifferent between event and delegate
委托你可以在客户代码中直接调用委托来激发委托指向的函数
事件不可以,事件的触发只能由服务代码自己触发
事件是特殊类型的委托,只可以从声明它们的类中调用
委托不仅可直接+,・,也可用+=、一=来处理,事件只能用+=,-=注册方法
委托是一个类,它定义了方法的类型,使得可以将方法当作另一个方法的参数来进行传递,这种将方法动态地赋给彥 可以避免在程序中大量使用If-Else (Switch)语句,同时使得程序具有更好的可扩展性。
GAC的理解及其作用.
GAC 全称是 Global Assembly Cache
作用是可以存放一些有很多程序都要用到的公共Assembly,> Sy stem. Windows. For ms等夸 多程序就可以从GAC里面取得Assembly,而不需要再把所有要用到的Assembly都拷贝到应用程序的执行目录 言,如果没有GAC,那么势必每个WinForm程序的目录下就都要从C:/WI NDOWS/ ,这样显然不如都从GAC里面取用方便,也有利于Assembly的升级和版环
除了系统默认放置在GAC中的Assembly如System .Windows. Forms以外,我们也可以添加自己的Assembly
仓 ij建——个 str ong・n ame K] Assembly,例女 n ToolbarComp on
运行 gacutil -i ,把这个 Assembly 添加到 GAC
在程序中动态装载:
System .Ref lection. Assembly ass= Assembly. Load ("Tool barComponent, Versio n= , Culture= neutral, PublicKeyToken= 65f45658c8d4927f");
("l s the assembly loaded from GAC? "+ Assembly Cache);
在上面的程序中,Toolbarcomponent就是从GAC装载而不是从程序的运行目录下的dll文件中装载,程序目录1
也能正常运行。另外,()中的参数可以通过"gacutil・1”查到。
另外,上面提到了 GAC中的Assembly必须是strong-name的。创建strong-name的Assembly的步骤大致丈
在命令行运行usn -k "创建一个密钥文件。。
可以被问的比较的深入 applicatiionState, SessionState
。,该页面上的Viev 所有控件将被收集并格式化成一个编码字符串,然后被分配给隐藏窗体字段的值属性(即<inputtype=hidden> : 窗体字段是发送到客户端的页面的一部分,所以
ViewState值被临时存储在客户端的浏览器中。如果客户端选择将该页面回传给服务器,则ViewState字符串也M 回传后,,并为该页面和各个控件填充ViewState属性。然后,控彳 ViewState数据将自己重新恢复为以前的状态。
DataTable dt = new DataTable();
dt = (strSql) .Tables[O];
〃用于分页和排序
ViewStat e[" User List"] = dt;
因WEB窗体与窗体之间不存在关联
要靠状态管理来实现
Appliction:网站第一次运行创建,全站所有页面可访问
Session:当用户登陆时创建,全站所有页面可访问,但用户下线后消失
ViewState:当前面面可访问,处理客户端,跳转到别的页面不可见
• new与v辻tual method的区别
注意new操作符与new修饰符的区别:new操作符用来创建对象实例(调用构造函数,在堆中开辟空间并初始化, 回;如果不使用new,如classA A;那么A只是在栈上的一个标记,并没有实际内容);new修饰符用以显式隐藏 员(包括属性,方法,成员,
微软面试题 来自淘豆网m.daumloan.com转载请标明出处.