1、MVC中如何保持Session?
可以使用tempdata,viewdata,viewbag三种方式
tempdata:不同的控制器类或者动作间转换时保持数据,页面转向时也保持数据,是一个内部的Session变量
viewdata:可在控制器和视图间保持数据
viewbag:视图数据的动态包装,使用viewba不需要类型转换。
2、MVC中如何做输入校验?
在model层的数据模型的字段加入属性标签[Required],然后在Controller层使用ModelState.IsValidate属性检查数据是否正确
3、已经有了ASPX,为什么还要用Razor?
Razor是一个轻量级的试图引擎,MVC3引入,相比ASPX,Razor更干净,轻量级,语法简单
只需要使用@关键字,比如@DateTime.Now
4、MVC中有多少种不同类型的结果类型?
首先是ActionResult:基础类,他有11个子类型
ViewResult:给响应流渲染指定视图
PartialViewResult:给响应流渲染指定的局部视图
EmptyResult:返回空的响应结果
RedirectResult:执行一个HTTP转向到指定的URL
JsonResult:序列化一个ViewData对象到Json格式。
5、异常处理的方式
try{ }cacch(){
throw;
}
//catch无参数,可以捕获所有异常,只有throw关键字,表示抛出当前catch语句捕获的异常
try{
}
catch(Exception ex){
throw ex
}
//catch有参数,可以-捕获所有Exception类派生的异常,throw ex抛出Exception异常或者ception派生的类型异常
6、Ajax操作如何处理Session过期?
Session过期,我们获取请求头信息值判断是否为Ajax请求,如果是,我们可以返回特定格式的JSON数据,
客户端可以对此数据处理,发现JSON失效,可以跳转到其他页面如登录页面。
7、.NET框架下remoting和WebService两种技术应用
Remoting:可以利用TCP/IP,二进制传送提高效率,远程逻辑调用,只能用在.NET Remoting在.NET中跨越machine,process,appdomain进行方法调用的技术。
WebService:可以利用HTTP穿透防火墙,构建应用程序的普通模型,并能在所有支持的internet网通讯的操作系统上实施。WebService是基于组件的开发和Web的结合达到最佳,基于组件的对象模型。