Wednesday 3 February 2016

100 TOP MVC ASP.NET Interview Questions with Answers pdf

MVC ASP.NET  Interview Questions with Answers pdf :-


1) What is MVC?
MVC is a pattern which is used to split the application's implementation logic into three components: models, views, and controllers.

2) Can you explain Model, Controller and View in MVC?

  • Model – It’s a business entity and it is used to represent the application data.
  • Controller – Request sent by the user always scatters through controller and it’s responsibility is to redirect to the specific view using View() method.
  • View – It’s the presentation layer of MVC.

3) Explain the new features added in version 4 of MVC (MVC4)?
Following are features added newly –

  • Mobile templates
  • Added ASP.NET Web API template for creating REST based services.
  • Asynchronous controller task support.
  • Bundling the java scripts.
  • Segregating the configs for MVC routing, Web API, Bundle etc.

4) Can you explain the page life cycle of MVC?
Below are the processed followed in the sequence -

  1. App initialization 
  2. Routing 
  3. Instantiate and execute controller 
  4. Locate and invoke controller action 
  5. Instantiate and render view.

5) What are the advantages of MVC over ASP.NET?

  • Provides a clean separation of concerns among UI (Presentation layer), model (Transfer objects/Domain Objects/Entities) and Business Logic (Controller). 
  • Easy to UNIT Test. 
  • Improved reusability of model and views. We can have multiple views which can point to the same model and vice versa. 
  • Improved structuring of the code.

6) What is Separation of Concerns in ASP.NET MVC?
It’s is the process of breaking the program into various distinct features which overlaps in functionality as little as possible. MVC pattern concerns on separating the content from presentation and data-processing from content.

7) What is Razor View Engine?
Razor is the first major update to render HTML in MVC 3. Razor was designed specifically for view engine syntax. Main focus of this would be to simplify and code-focused templating for HTML generation. Below is the sample of using Razor:
@model MvcMusicStore.Models.Customer
@{ViewBag.Title = "Get Customers";}
<div class="cust"> <h3><em>@Model.CustomerName</em> </h3>
8) What is the meaning of Unobtrusive JavaScript?

This is a general term that conveys a general philosophy, similar to the term REST (Representational State Transfer). Unobtrusive JavaScript doesn't intermix JavaScript code in your page markup.
Eg : Instead of using events like onclick and onsubmit, the unobtrusive JavaScript attaches to elements by their ID or class based on the HTML5 data- attributes.

9) What is the use of ViewModel in MVC?

ViewModel is a plain class with properties, which is used to bind it to strongly typed view. ViewModel can have the validation rules defined for its properties using data annotations.

10) What you mean by Routing in MVC?

Routing is a pattern matching mechanism of incoming requests to the URL patterns which are registered in route table. Class – “UrlRoutingModule” is used for the same process.

11) What are Actions in MVC?

Actions are the methods in Controller class which is responsible for returning the view or json data. Action will mainly have return type – “ActionResult” and it will be invoked from method – “InvokeAction()” called by controller.

12) What is Attribute Routing in MVC?

ASP.NET Web API supports this type routing. This is introduced in MVC5. In this type of routing, attributes are being used to define the routes. This type of routing gives more control over classic URI Routing. Attribute Routing can be defined at controller level or at Action level like –
[Route(“{action = TestCategoryList}”)] - Controller Level
[Route(“customers/{TestCategoryId:int:min(10)}”)] - Action Level
13) How to enable Attribute Routing?
Just add the method – “MapMvcAttributeRoutes()” to enable attribute routing as shown below
public static void RegistearRoutes(RouteCollection routes)
{
routes.IgnoareRoute("{resource}.axd/{*pathInfo}");
//enabling attribute routing
routes.MapMvcAttributeRoutes();
//convention-based routing
routes.MapRoute
(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Customer", action = "GetCustomerList", id = UrlParameter.Optional }
);
}
14) Explain JSON Binding?

JavaScript Object Notation (JSON) binding support started from MVC3 onwards via the new JsonValueProviderFactory, which allows the action methods to accept and model-bind data in JSON format. This is useful in Ajax scenarios like client templates and data binding that need to post data back to the server.

15) Explain Dependency Resolution?

Dependency Resolver again has been introduced in MVC3 and it is greatly simplified the use of dependency injection in your applications. This turn to be easier and useful for decoupling the application components and making them easier to test and more configurable.

16) Explain Bundle.Config in MVC4?

"BundleConfig.cs" in MVC4 is used to register the bundles by the bundling and minification system. Many bundles are added by default including jQuery libraries like - jquery.validate, Modernizr, and default CSS references.

17) How route table has been created in ASP.NET MVC?

Method – “RegisterRoutes()” is used for registering the routes which will be added in “Application_Start()” method of global.asax file, which is fired when the application is loaded or started.

18) Which are the important namespaces used in MVC?

Below are the important namespaces used in MVC -
System.Web.Mvc
System.Web.Mvc.Ajax
System.Web.Mvc.Html
System.Web.Mvc.Async
19) What is ViewData?

Viewdata contains the key, value pairs as dictionary and this is derived from class – “ViewDataDictionary“. In action method we are setting the value for viewdata and in view the value will be fetched by typecasting.

20) What is the difference between ViewBag and ViewData in MVC?

ViewBag is a wrapper around ViewData, which allows to create dynamic properties. Advantage of viewbag over viewdata will be –

  • In ViewBag no need to typecast the objects as in ViewData.
  • ViewBag will take advantage of dynamic keyword which is introduced in version 4.0. But before using ViewBag we have to keep in mind that ViewBag is slower than ViewData.


MVC ASP.NET  Interview Questions with Answers pdf ::

100 TOP MVC ASP.Net Multiple Choice Questions and Answers pdf

MVC ASP.Net Multiple Choice Questions and Answers pdf free download for freshers and Experienced :-


1. Which is the best approach to assign a session in MVC?

A) System.Web.HttpContext.Current.Session["LoginID"] =7;
B) Current.Session["LoginID"] =7;
C) Session["LoginID"] =7;
D) None

2. RedirectToActionPermanent() Method for which Status code represents?

A) 304
B) 302
C) 301
D) 300
E) None

3. RedirectToAction() Method for which Status code represents?

A) 304
B) 302
C) 301
D) 300
E) None

4. What is ActionResult() ?

A) It is an abstract Class
B) It is a Concrete Class
C) Both A and B
D) None

5. What is ViewResult() ?

A) It is an abstract Class
B) It is a Concrete Class
C) Both A and B
D) None

MVC Architecture

6. return View() works like in ASP.Net MVC C# as

A) Server.Transfer()
B) Response.Redirect()
C) Both A and B
D) None

7. RedirectToAction() works like in ASP.Net MVC C# as

A) Server.Transfer()
B) Response.Redirect()
C) Both A and B
D) None

8. In which format data can be return from XML into table ?

A) DataSet
B) Datatable
C) A and B
D) None

9. Can we use view state in MVC ?

A) Yes
B) No
C) Both A & B
D) None

10. What Request Processing technique follows ASP.Net ?

A) Top-Down
B) Down-Up
C) Pipeline
D) Water fall

11. What is DRY principle in ASP.Net ?

A) Don't repeat yourself.
B) Don't revise yourself.
C) both a and b
D) None

12.  What is default authentication in Internet Information Services (IIS)?

A) Standard User
B) Administrator
C) Anonymous
D) None

13. What is the extension of MVC view when using C#?

A) cshtml
B) vbhtml
C) None
D) Both A & B

14. What is the extension of MVC view when using vb.net?

A) cshtml
B) vbhtml
C) None
D) Both A & B

15. How can you comment using Razor Syntax?

A) *@ Comment me *@
B) @* Comment me *@
C) @* Comment me @*
D) *@ Comment me @*
E) None

16. Which Namespace is used for Razor View Engine ?

A) System.Web.Razor
B) System.Web.Mvc.WebFormViewEngine
C) Both A & B
D) None

17. Which Namespace is used for ASPX View Engine ?

A) System.Web.Razor
B) System.Web.Mvc.WebFormViewEngine
C) Both A & B
D) None
ASP.Net Interview Questions

18. The Razor View Engine uses to render server side content.

A) @
B) <%= %>
C) Both A & B
D) None

19. The ASPX View Engine uses to render server side content.

A) @
B) <%= %>
C) Both A & B
D) None

20. Which is more faster between ASPX View Engine and Razor View Engine.

A) ASPX View Engine
B) Razor View Engine
C) Both A & B
D) None

21. Does Razor Engine supports for TDD ?

A) Yes
B) No
C) None

22. Does ASPX View Engine supports for TDD ?

A) Yes
B) No
C) None
Filters Routing TDD

22. How to Print value from Controller to View in MVC ?

A) ViewBag.ECMDetail = "my message"; and in view @ViewBag.ECMDetail
B) ViewBag.ECMDetail = "my message"; and in view ViewBag.ECMDetail
B) ViewBag.ECMDetail = "my message"; and in view ViewBag.Title
D) None

23. If you have already implemented different filters then what will be order of these filters?

1) Authorization filters
2) Action filters
3) Response filters
4) Exception filters

24.  Can you specify different types of filters in ASP.Net MVC application?

1) Authorization filters (IAuthorizationFilter)
2) Action filters   (IActionFilter)
3) Result filters (IResultFilter)
4) Exception filters (IExceptionFilter)

25. What are the advantages of using ASP.NET routing?

Answer: Clean URLs is originally brought from Ruby on Rails. http://www.technologycrowds.com?abc=10 , now clean URL in MVC ASP.Net will be work like http://www.technologycrowds.com/abc/10

26. What is the significance of ASP.NET routing?

Answer: Default Route Name:
"{controller}/{action}/{id}", // URL with parameters
By default routing is defined under Global.asax file. MVC ASP.Net uses routing to map between incoming browser request to controller action methods.

27. Can be it possible to share single view across multiple controllers in MVC?

Answer: We can put the view under shared folder, it will automatically view the across the multiple controllers.

28. Are MVC and Web API merged into one in MVC 6?

A) Yes
B) No
C) Both A & B
D) None

29. Does MVC 6 introduced new JSON project based structure?

A) Yes
B) No
C) Both A & B
D) None

30. Does MVC 6 allow only save change, hitting the save but then refreshing the browser to reflect changes?

A) Yes
B) No
C) Both A & B
D) None

31. Does vNext is now Open Sourced via the .NET Foundation and open to public contributions.

A) Yes
B) No
C) Both A & B
D) None

32. Can vNext runs on both Mac and Linux today (Mono Version)?

A) Yes
B) No
C) Both A & B
D) None

33. What is the difference between MVC (Model View Controller) and MVP (Model View Presenter)?

Answer: MVC controller handles all the requests, MVP handles as the handler and also handles the all requests as well.

34. How does work Viewstart in MVC (ASP.Net)?

A) Viestart is used to layout of the application.
B) Viewstart is used like Masterpage in traditional forms (ASP.Net pages).
C) Viewstart render first in the views.
D) A, B and C.
E) None

Viewstart Code Snippet

@{

    Layout = "~/Views/Shared/_Layout.cshtml";
}

35. Viewstart comes under which folder name ?

A) Views
B) Account
C) Shared
D) Home

36. Does Viewstart override all Views layout/template under "Views" folder in MVC ?

A) Yes
B) No
C) Both A & B
D) None

37. What is the name of default Viewstart Page in ASP.Net MVC ?

A) _ViewStart.cshtml
B) _Layout.cshtml
C) _Login.cshtml
D) None

38. Can we use third party View Engine using ASP.Net MVC Engine ?

Yes, below are the top five alternative ASP.Net MVC View Engines.

  1. Spark (Castle MonoRail framework projects), Open Sourced, it is popular as MVCContrib library.
  2. NHaml works like inline page templating.
  3. NDjango uses F# Language.
  4. Hasic uses VB.Net, XML.
  5. Bellevue for ASP.NEt view, It respects HTML class first.

39. What is scaffolding using ASP.Net MVC Engine? 

Answer: Scaffolding helps us to write CRUD operations blend using Entity Framework, It helps developer to write down simply even yet complex business logic.

40. What is life cycle in ASP.Net MVC Engine?

Step 1: Fill Route (Global.asax file will hit first).
Step 2: Fetch Route: It will gether information about controller and action to invoke.
Step 3: Request context
Step 4:  Controller instance: it calls Controller class and method.
Step 5: Executing Action: It determines which action to be executed 
Step 6: Result (View): Now Action method executed and returns back response to view in differentiating forms like Json, View Result, File Result etc.
Viewstart scaffolding MVC Engine Life Cycle

MVC ASP.Net Interview Questions and Answers pdf ::

41. Which is the way to render Partial View using ASP.Net MVC Razor Engine?

A) @Html.Partial("_PartialHeader")
B) @Html.PartialView("_PartialHeader")
C) @Html.PartialHtml("_PartialHeader") 
D) B and C
E) None

42. Which  Namespace is used to "Display" in Data Annotation using MVC ?

A) System.ComponentModel
B) System.ComponentModel.DataAnnotations
C) Both A and B
D) None

43. Which  Namespaces are required to Data Annotation using MVC ?

A) System.ComponentModel
B) System.ComponentModel.DataAnnotations
C) Both A and B
D) None
ViewData ViewBag Tempdata

44. Are both TempData/ViewData require typecasting in MVC?

A) Both (TempData/ViewData) requires type casting to avoid null exception.
B) No, these (TempData/ViewData) does not require type casting.
C) Both A) & B)
D) None

45. Is ViewBag slower than ViewData in MVC?

A) Yes
B) No
C) Both A) & B)
D) None

46. Is ViewData faster than ViewBag in MVC?

A) Yes
B) No
C) Both A) & B)
D) None

47. Are both TempData/ViewData property of Controller base class in MVC?

A) Yes
B) No
C) Both A) & B)
D) None

48. Does TempData used to pass data from one page to another page in MVC?

A) Yes
B) No
C) Both A) & B)
D) None
ASP Net Web API Questions

49. Can ASP.Net Web API specialize to XML or JSON ?

A) Yes
B) No
C) None

50. Does Web API (ASP.Net) supports to non SOAP based like XML or JSON ?

A) Yes
B) No
C) None

51. Does Web API (ASP.Net) supports to both version mobile apps and others ?

A) Yes
B) No
C) Both A & B
D) None

52. Can ASP.Net Web API, it works HTTP standard verbs like POST, GET, PUT, DELETE (CRUD Operations) ?

A) Yes
B) No
C) Both A & B
D) None

53. Can ASP.Net Web API ability to both self hosting (outside of IIS) and IIS ?

A) Yes
B) No
C) None

54. Can ASP.Net Web API has ability to transport non HTTP protocols like TCP, UDP, Named Pipes etc ?

A) Yes
B) No
C) None

55. What is AuthConfig.cs in ASP.Net MVC ?

A) AuthConfig.cs is used to configure route settings
B) AuthConfig.cs is used to configure security settings including sites oAuth Login.
C) None
D) All

56. What is BundleConfig.cs in ASP.Net MVC ?

A) BundleConfig.cs in MVC is used to register filters for different purposes.
B) BundleConfig.cs in MVC is used to register bundles used by the bundling and minification, serveral bundles are added by default like jQuery, jQueryUI, jQuery  validation, Modernizr, default CSS references.
C) All
D) None

57. What is FilterConfig.cs in ASP.Net MVC ?

A) FilterConfig.cs is used to register global MVC filters, HandleErrorAttribute is registered by default filter. We can also register other filters.
B) FilterConfig.cs is used to register global MVC bundles.
C) None
D) All

58. What is  RouteConfig.cs in ASP.Net MVC?

A) RouteConfig.cs is used to register MVC config statements, route config.
B) RouteConfig.css is used to register global MVC bundles.
C) None
D) All

59. What is the difference between HtmlTextbox and HtmlTextboxFor using ASP.Net MVC Razor Engine?

A) @Html.TextBox is not strongly typed, @Html.TextBoxFor is strongly typed that is why should be use @Html.TextBoxFor in MVC Razor Engine.
B) @Html.TextBox is strongly typed, @Html.TextBoxFor is not strongly typed that is why should be use @Html.TextBox in MVC Razor Engine.
C) None
D) Both A and B

Syntax

@Html.Partial("_viewname"); 

60. What is the benefits of Html.RenderPartial using ASP.Net MVC Razor Engine?

A) @Html.RenderPartial Returns response, moreover requires to create action.
B) @Html.RenderPartial Returns nothing (void), it is faster than @Html.Partial, moreover requires not to create action.
C) None
D) Both A and B

Syntax
@Html.Partial("_viewname");
@Html.RenderPartial("_viewname");

61. What is the benefits of Html.Partial using ASP.Net MVC Razor Engine?

A) @Html.RenderPartial Returns response, moreover requires to create action.
B) @Html.RenderPartial Returns string value, it is slower than @Html.RenderPartial, moreover requires not to create action.
C) None
D) Both A and B

Syntax
@Html.Partial("_viewname");

62. How to check Request coming from which controller using MVC ASP.Net?

A) var _controller = HttpContext.Current.Request.RequestContext.Values["Controller"].ToString();
B) var _controller = HttpContext.Current.Request.RequestContext.RouteData.Values["Controller"].ToString();
C) var _controller = RouteData.Values["Controller"].ToString();
D) None

63. For which ModelState.IsValid Validate ?

A) It checks for Entityframework Model state.
B) It checks for valid Model State using DataAnnotations.
C) It checks for SQL database state.
D) None
Do Nut Charts

64. Which Name space is used to create chart using ASP.Net MVC?

A) using System.Web.MVC;
B) using System.Web.Helpers;
c) using System.Web.Chart;
D) All

65. How can we provide Height and Width to MVC Charts ?

A) new Chart(width - 600, height - 400)
B) new Chart(width = 600, height = 400)
C) new Chart(width: 600, height: 400)
D) All

Funnel Chart

66. How can we set theme to MVC Charts?

A) new Chart(width: 600, height: 400, theme: ChartTheme.Vanilla3D)
B) new Chart(width: 600, height: 400, theme: ChartTheme = Vanilla3D)
C) new Chart(width: 600, height: 400, theme: Vanilla3D)
D) None

67. How can we give Title to MVC Charts?

A) var chart = AddTitle("My First Chart")
B) .AddTitle("My First Chart")
C) .AddTitle('My First Chart')
D) All

68. How can we add Series to MVC Charts?

A) .AddSeries(chartType: "Bar", xValue: xValue, yValues: yValue)
B) .AddSeries(chartType: "Bar", xValue = xValue, yValues = yValue)
C) .AddSeries(chartType: "Bar", xValue: xValue, yValues: yValue)
D) None

69. How can we add Chart Type to MVC Charts?

A) .NewSeries(chartType: "Bar")
B) .Series(chartType: "Bar")
C) .AddSeries(chartType: "Bar")
D) All

Pyramid Chart

70. How can we write Chart output to MVC View?

A) .Write(bmp);
B) Write("bmp");
C) .Write("bmp");
D) All

71. How can we Show Chart output to MVC View?

Chart Controls
Answer: C)

72. Which name space using can send email in ASP.Net MVC?

A) using System.Net.Mail;
B) using System.Net;
C) using System.Mail;
D) None
MailMessage mail = new MailMessage();

73. If Razor View Engine need to add JQuery function and contain @ special character then how we can write it in Razor View? 

A) Replace @ to @@@ (tripple)
B) Replace @ to @@ (double) 
C) None
D) Both (A & B)

74. How to set Default Value to Hidden Input Box using ASP.Net MVC? 

A) @Html.HiddenFor(m => m.Name, "Jack")
B) @Html.HiddenFor(m => m.Name, new { Value = "Jack"}) 
C) @Html.Hidden(m => m.Name, new { Value = "Jack"})
D) None

75. How to check all errors of Model using ASP.Net MVC?

A) var errors = Model.Values.SelectMany(v => v.Errors);
B) var errors = ModelState.SelectMany(v => v.Errors);
C) var errors = ModelState.Values.SelectMany(v => v.Errors);
D) None

76. AuthConfig.cs file is under in which App folder ? 

A) App_Data
B) App_Start
C) Content
D) Filters
app_start

77. BundleConfig.cs file is under in which App folder ? 

A) App_Data
B) App_Start
C) Content
D) Filters

78. FilterConfig.cs file is under in which App folder ? 

A) App_Data
B) App_Start 
C) Content
D) Filters

79. RouteConfig.cs file is under in which App folder ?

A) App_Data
B) App_Start
C) Content
D) Filters

80. WebApiConfig.cs file is under in which App folder ?

A) App_Data
B) App_Start 
C) Content
D) Filters

81. Can you list the main types of result using ASP.Net MVC?

There are total 10 main types of result, ActionResult is main type and others are sub types of results as listed below:
  • System.Web.Mvc.ActionResult 
  • System.Web.Mvc.ContentResult 
  • System.Web.Mvc.EmptyResult 
  • System.Web.Mvc.FileResult 
  • System.Web.Mvc.HttpStatusCodeResult 
  • System.Web.Mvc.JavaScriptResult 
  • System.Web.Mvc.JsonResult 
  • System.Web.Mvc.RedirectResult 
  • System.Web.Mvc.RedirectToRouteResult 
  • System.Web.Mvc.ViewResultBase

82. Which filter will be execute at first using ASP.Net MVC?

A) Action filters
B) Authorization filters
C) Response filters
D) Exception filters

83. Which filter will be execute at last using ASP.Net MVC?

A) Action filters
B) Authorization filters
C) Exception filters
D) Response filters

MVC ASP.Net Multiple Choice Questions and Answers pdf