我即将为我们的ASP.NET MVC项目雇用一个新的程序员.我在采访中非常重视我对候选人的态度有多喜欢,以及我如何看待他们的工作,与他们交谈并享受成为团队的一员,但在更实际的说明中我需要排除那些与那些实际上有能力适应和克服日常编程问题的人交谈.
任何人都可以建议任何好的简短问题/练习(最好是在C#中)将聪明的候选人与优秀的谈话者分开吗?
更新 - 非常感谢所有回答的人,我选择了最传统的StackOverlfow投票方式,但仍然感谢所有其他建议.
来自MVC首字母缩写词的哪一封信应该负责在网上商店网络应用程序中执行以下功能:
计算购物车中物品的总金额(M)
建立一个购买物品的html表(V)
将未经过身份验证的用户重定向到可以输入结算信息的页面(C)
等等
ASP.Net MVC访谈中可能会提出的问题.
1-什么是ASP.Net MVC?
2-什么是剃刀?
3-什么是TDD?
4-什么是BDD?
5-什么是依赖注入(DI)?
6-什么是ViewData和ViewBag?
7-在哪个程序集中定义了MVC框架?
8-模型,视图和控制器在MVC应用程序中表示什么?
9- ASP.NET MVC有哪些优点?
10-哪种方法为测试驱动开发提供了更好的支持 - ASP.NET MVC或ASP.NET Webforms?
11-控制器动作方法的不同返回类型的名称?
12- NonActionAttribute的意义是什么?
13-是否可以跨多个控制器共享视图?
14-控制器在MVC应用程序中的作用是什么?
15- asp.net MVC应用程序中定义的路由规则在哪里?
16- ASP.NET MVC应用程序中存在的默认路由的3个段是什么?
17- ASP.NET MVC应用程序,利用2个位置的设置进行路由以正常工作.这两个地方是什么?
18-使用ASP.NET路由的优点是什么?
19-指定路线需要3件事情是什么?
20-以下默认路由有什么用?
21-将路由添加到webforms应用程序和mvc应用程序之间有什么区别?
22-如何处理路径定义中的可变数量的段?
23-为路线添加约束的两种方法是什么?
24-在没有应用路由的情况下给出2个示例?
25- MVC应用程序中动作过滤器的用途是什么?
26-如果我实现了多个过滤器,这些过滤器的执行顺序是什么?
27-在asp.net mvc应用程序中有哪些不同类型的过滤器?
28-举例说明asp.net mvc应用程序中的授权过滤器?
29-哪个过滤器首先在asp.net mvc应用程序中执行?
30-在asp.net mvc应用程序中应用过滤器的级别是什么?
31-是否可以创建自定义过滤器?
32-最后执行了哪些过滤器?
33-是否可以取消过滤器执行?
34- OutputCacheAttribute类表示什么类型的过滤器?
35- 2个流行的asp.net mvc视图引擎是什么?36-您将使用什么符号来表示剃刀视图中代码块的开头?
37-您将用什么符号表示aspx视图中代码块的开头?
38-在剃刀语法中,@符号的转义序列字符是什么?
39-使用剃刀视图时,您是否必须采取任何特殊步骤从跨站点脚本(XSS)攻击中获取您的asp.net mvc应用程序?
40-当使用剃刀视图时,什么是asp.net主页等效?
41-什么是部分?
42-剃刀视图的文件扩展名是什么?
43-如何使用razor语法指定注释?
44- ASP.NET MVC中值参数的处理是什么?
45-什么网站托管对ASP.NET MVC有利?
46- Asp.Net MVC项目中的区域是什么以及如何在ASP.Net Projects /中实现区域
47-如何在ASP.Net mVC项目中使用会话?
48-如何在ASP.Net应用程序中将数据从一个页面保存到另一个页面?
49-什么是Tempdata?
50-什么是JSON?
51-什么是Lambda表达式?
首先要做的事情.他们甚至知道什么是MVC.不只是TLA(三个字母的缩写),但他们可以向你描述它.那有什么好处.问他们对此的看法也没有什么坏处.很高兴知道他们是否喜欢MVC框架.
接下来,询问他们是否使用过任何其他MVC框架.Struts,Spring MVC,Zend或类似的东西.
询问他们是否知道会话开始时间,网络上的一般状态问题等.
还有点数据库.询问他们是否有使用数据库持久层的经验.
然后,只是因为你可以提出一个棘手的技术问题,请他们编写一个函数来比较价值和结构中的两个二叉树,看看它们是否是相同的.
任何在面试之前阅读好MVC书或MVC 101的人都可以回答诸如MVC之类的问题,描述它等等.确定他们是否具有MVC的任何工作知识的确定方法是询问他们,按照他们如何使用MVC接近Web应用程序的顺序布置步骤.例如:他们说,他们会首先布置模型吗?或观点?为什么?他们首先在控制器上工作吗?只是典型应用程序的基本流程.一个按顺序描述这个过程的候选人,并说明为什么它是这样的原因,等等..将是你正在寻找的胜利者.