In this article,  explaining best MVC ASP.Net Interview Questions and Answers as below. In my earliest article covered .Net framework OOPS interview questions:

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

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

84. What is the main purpose of HTML Helper of ActionLink in ASP.Net MVC? 

A) It links to specific controller
B) It links to specific Action 
C) It links to specific View
D) None

85. How to format Date in Razor View using ASP.Net MVC? 

A) @string.Format(Convert.ToDateTime(Html.DisplayFor(modelitem => item.Start_Date).ToString()))
B) @string.Format("{0:dd/MM/yyyy}", Convert.ToDateTime(Html.DisplayFor(modelitem => item.Start_Date).ToString())) 
C) Both A & B
D) None

Forms Authentication in C# MVC Forms Authentication

86. How can we set up the Web.Config for Forms Authentication?


87. How can we setup Logon Types in forms authentication?

Namespace

HttpContext.User.Identity
public class MyPrincipal : IPrincipal
{
   /// do something here
}

88. How can we Validate the User in forms authentication?

if (Membership.ValidateUser(clsuser.Username, clsuser.Password))
{
   /// my logic here
}

89. How can we Authenticate the Current Request in forms authentication? 

 HttpCookie authCookie = Request.Cookies[FormsAuthentication.FormsCookieName];
if (authCookie != null)
{
    /// do something here
}

90. How can we log out (End Session) in forms authentication?

// Delete the user details from cache.
    session.Abandon();
// Delete the authentication ticket and sign out.
    FormsAuthentication.SignOut();
// Clear authentication cookie.
    HttpCookie cookie = new HttpCookie(FormsAuthentication.FormsCookieName, "");
    cookie.Expires = DateTime.Now.AddYears(-1);
    response.Cookies.Add(cookie);

AntiForgeryToken() in MVC Application

91. Which name space is used to apply AntiForgeryToken() in our MVC Application?

A) System.Web
B) System.Web.Mvc
C) System.Web.ASP
D) None

92. What is full form of CSRF?

A) Cross-Site Renew Forgery
B) Cross-Site Render Forgery
C) Cross-Site Request Forgery
D) None

93. Which syntax need to write in our MVC HTML Helper (MVC Razor View) to validate AntiForgeryToken()?

A) @Html.ForgeryToken()
B) @Html.AntiForgeryToken()
C) @Html.AntiForgeryTok()
D) None

94. Which option is correct to validate our request in MVC Controller?

A) [HttpPost]
   [ValidateAntiForgeryToken()]
B) [HttpGet]
   [ValidateAntiForgeryToken()]
C) [HttpPut]
   [ValidateAntiForgeryToken()]
D) [HttpDelete]
   [ValidateAntiForgeryToken()]

95. Can we apply AntiForgeryToken() to GET method?

A) Don't Know
B) Yes
C) No

96. If we don't implement AntiForgeryToken() in our MVC app in both View and Controller then which known error comes?

A) The required form field "__RequestVerificationToken" is not present.
B) The required anti-forgery form field "__RequestVerificationToken" is not present.
C) The required anti-forgery form field "VerificationToken" is not present.
D) None

Note: Read more here about AntiForgeryToken() in MVC

OOPS, IIS and Other ASP.Net Interview Questions and Answers: