首页 > 开发 > 综合 > 正文

KW大师的标准答案(也不是标准,他自己的一些想法,而且由于当时是Beta1,有一些不一样了,比如XS

2024-07-21 02:27:57
字体:
来源:转载
供稿:网友
1. page class 实现了哪个重要的 interface?

a: ihttphandler
偶以为了解 .net class, interface 特重要的说......


2. foo.aspx 编译后的 class 名字是什么?

a: foo_aspx
扩展问题:如何动态地,用程序(programmatically)引用一个 user control?
有什么要注意的?
别告诉我 msdn beta 1 里有。你编译一下就知道它在胡说。

3. shadow-copy dll 存在哪里?

a:
考虑一下,如果没有一种机制(现在我们管它叫 shadow-copy),
我们能否删除/改变正在被使用的 dll?
比如在 vb6+iis+asp+mts 环境中,多少次需要 restart iis service or reboot...

4. 谈谈 autoeventwireup

a:
有谁发现自己写的某些事件被执行了两遍? ;)

5. 关于 directive 中的 inherits:一个 aspx 可能 inherits 多个 class 吗?
多个 page 可能 inherits 一个 code behind 吗?

a:
c# 中不能多重继承。
但多个不同 aspx 肯定能 share 一个 code behind ---- 哪怕 page 里的 server control 不一样。

6. @assembly 和 csc /r 和 vs.net 项目中 reference 的关系是什么?
a:
需要同时使用 ide 和手工编译的人最清楚了。;-(

7. web control 和 html control 在 performance 上有区别吗?
a:
文档上总说 beta1 拒绝 performance 测试 ;-)

8. 对 asp.net 的请求是由哪个 isapi extension 处理分发的?
a:
xspisapi.dll 在 iis mmc 中改
如果有自己写的继承 ihttphandler 的东东,知道这些就有用了。

9. 这个 isapi extension 实际上把请求 forword 到哪个 process?
a:
xspwp.exe

10 如果使用外部进程维护 session,这个进程是什么?
a:
aspstate.exe
在 config.web 里面修改设置,可以把 session 放在其它机器上,甚至 sql 里。
这样就可以直接支持 web farm 了。
但 session 变量如果是 object,就会有个 serialize 的过程,很耗资源。
如何让你的 object 更好地支持 serializable interface 是个比较大的话题,
实在敲不动的说。

11 如何自己做个 httphandler? 能想出它有什么实际用处吗?
a:
实现 ihttphandler 做出自己的 handler 很简单,但很有用,比如当用户请求一些
特殊文件时,比如 *.log,你可以在 config.web 中设置定向到你自己的 handler 上,
让它做处理。


12 谈谈 httpmodule
a:
问题 11 的延伸

13 如何在 vs.net 中 debug asp.net 应用?
a:
attach process

14 如果你通过继承 system.web.ui.control 写了个 custom control,
如何加上对 client-side script 的支持?
a:
没什么可说的。

15 在 aspx 页面中放上一些 textbox, listbox 等等 web control,
但在 code-behind 中并不定义它们,是否可能使用这些 control?
a:
能。通过 page.controls, or form.controls, or container.controls whatever...
这样你可以做出完全不同的 web ui,share 一个共同的 code behind,
做出真正 generic


注册会员,创建你的web开发资料库,
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表