深圳明源软件面试题
公司网址:http://www.mysoft.com.cn/
一.解释5种访问修饰符
答:
public-访问不受限制。
private-访问范围为它所属的类。
protected-访问范围为它所属的类或从该类派生的类。
internal-访问范围为当前程序集。
protected internal-访问范围为当前程序集或由它所属类派生的类。
二.解释四种服务器端页面跳转方式
答:
Server.Execute("Text.aspx")-当请求的上下文中执行虚拟路径的处理程序。
Server.Transfer("Text.aspx")-终止当前页面,然后在服务器上执行新页的URL路径。
Response.Redirect("Text.aspx")-将客户端重定向到新的URL。
还有一种忘了
三.如何提高Web应用程序性能,写出五种方法。
答(以下列出了全部方法):
-页面和服务器控件处理
-避免到服务器的不必要的往返行程
-使用Page对象的IsPostBack属性来避免对往返行程执行不必要的处理
-只在必要时保存服务器控件视图状态
-除非有特殊的原因要关闭缓存,否则使其保持打开状态
-使用Transfer Server对象或跨页发送的方式在同一个应用程序中的不同页之间重定向
-状态管理
-当不使用会话状态时禁用它
-针对应用程序需要,选择适当的会话状态提供程序
-数据访问
-将SQLServer和存储过程用于数据访问
-将SqlDataReader类用于快速只进数据游标
-尽可能缓存数据和页输出
-适当地使用SQL缓存依赖项
-使用数据源分页和排序而不是UI分页和排序
-平衡事件验证的安全性受益和性能开销
-除非必要,否则避免使用视图状态加密
-使用SqlDataSource缓存、排序和筛选
-Web应用程序
-考虑预编译
-在IIS5.0上,在进程外运行Web应用程序
-必要时调整应用程序每个辅助进程的线程数
-对于广泛依赖外部资源的应用程序,请多考虑在处理器计算机上启用网络园艺
-禁用调试模式
-优化Web服务器计算机和特定应用程序的配置文件以符合您的需要
-仅对需要的应用程序启用身份验证
-根据适当的请求和相应编码设置来配置应用程序
-考虑对应用程序禁用AutoEventWireup
-从请求处理管线中移除不用的模块
-编码实践
-不要依赖代码中的异常
-在托管代码中重写调用密集型的COM组件
-避免单线程单元(STA)COM组件
四.在select * from A.B.C.D中A、B、C、D分别代表什么对象?
答:
A-机器名(实例名)
B-服务器名
C-用户名
D-表(视图)
五.一张表User,三个字段UserId,UserName,Password,准确搜索出UserId = 1的用户信息。
答:
select u.UserId,u.UserName,u.Password from User u where UserId = 1 order by UserId
六.两张表(非原题,但意思一样)
A
aID aData
1 1a
2 2a
3 3a
4 4a
B
bID bData
1 1b
2 2b
3 3b
8 8b
select A.* from A inner join B on A.aID = B.bID
select A.* from A left join B on A.aID = B.bID
select A.* from A right join B on A.aID = B.bID
select B.* from A inner join B on A.aID = B.bID
select B.* from A left join B on A.aID = B.bID
select B.* from A right join B on A.aID = B.bID
以上语句执行后分别影响的行数是多少?
七. 水费计算公式(非原题,但意思一样)
单价1 - 0—>计划用水量
单价2 - 计划用水量—>计划用水量*1.2
单价3 - 计划用水量—>
如果一个人的用水量是A,计划用水量是B,那么写出他的水费是多少。
要求:用一个函数iif(exp1,exp2,exp3) 如果exp1==true,则返回exp2,否则返回exp3。
八. 在新的页面显示,<a>用什么属性?
九. 在<iframe>框架中每个子页之间如何传递数据?
十. js的事件:onblur、onchange分别是什么意思?
十一. 软件工程有那些步骤,并解释。
十二. 编写自定义控件的过程。
十三. 写出你常用的设计模式,并解释。
十四. 对于特殊存储过程用触发器还是自写逻辑?为什么?
十五. 数据库完整性。
十六. SOAP是什么?