Dot Net Interview Questions And Answers Pdf

1. What is the managed and unmanaged code in .net?
Answer: The .NET Framework provides a run-time environment called the Common Language Runtime, which manages the execution of code and provides

services that make the development process easier. Compilers and tools expose the runtime’s functionality and enable you to write code that benefits from this managed execution environment. Code that you develop with a language compiler that targets the runtime is called managed code; it benefits from features such as cross-language integration, cross-language exception handling, enhanced security, versioning and deployment support, a simplified model for component interaction, and debugging and profiling services.

2. What are the memory-mapped files?
Answer: Memory-mapped files are used to map the content of a file to the logical address of an application. It makes you able to run multiple processes on the same machine to share data with each other. To obtain a memory-mapped file object, you can use the method Memory Mapped File. Create From Files ( ). It represents a persistent memory-mapped file from a file on disk.

3. Explain GridView control in ASP.NET?
Answer: The GridView control displays the values of a data source in a table. Each column represents a field, while each row represents a record. The GridView control supports the following features:

Binding to data source controls, such as SqlDataSource.
Built-in sort capabilities.
Built-in update and delete capabilities.
Built-in paging capabilities.
Built-in row selection capabilities.
Programmatic access to the GridView object model to dynamically set properties, handle events, and so on.
Multiple key fields.
Multiple data fields for the hyperlink columns.
Customizable appearance through themes and styles.
Creating a GridView

4. What is the difference between ASP.NET Web API and WCF?
Answer: The ASP. NET Web API is a framework that uses the HTTP services and makes it easy to provide a response to the client request. The response depends on the request of the clients. The Web API builds the HTTP services and handles the request using the HTTP protocols. The request may be GET, POST, DELETE, PUT. We can also say that ASP. NET Web API:

Is an HTTP service.
Is designed for reaching the broad range of clients.
Uses the HTTP application.
We use ASP. NET Web API for creating the RESTful (Representational State Transfer) services.

The following are some important points of the ASP. NET Web API:

The ASP. NET Web API supports the MVC application features that are controller, media formatters, routing etcetera.
It is a platform for creating the REST services.
It is a framework for creating HTTP services.
Responses can be formatted by the APIs MediaTypeFormatter into the JavaScript Object Notation (JSON) and Extensible Markup Language (XML) formats.
5. What are the defining traits of an object-oriented language?
The defining traits of an object-oriented language are:

a) Inheritance
b) Abstraction
c) Encapsulation
d) Polymorphism

Inheritance: The main class or the root class is called as a Base Class. Any class which is expected to have ALL properties of the base class along with its own is called a Derived class. The process of deriving such a class is Derived class.

Abstraction: Abstraction is creating models or classes of some broad concept. Abstraction can be achieved through Inheritance or even Composition.
Encapsulation: Encapsulation is a collection of functions of a class and object. The “Food” class is an encapsulated form. It is achieved by specifying which class can use which members (private, public, protected) of an object.

Polymorphism: Polymorphism means existing in different forms. Inheritance is an example of Polymorphism. A base class exists in different forms as derived classes. Operator overloading is an example of a Polymorphism in which an operator can be applied in different situations.

6. What is a CLS (Common Language Specification)?
Answer: CLS is a specification that defines the rules to support language integration. This is done in such a way, that programs are written in any language (.NET compliant) can communicate with one another. This also can take full advantage of inheritance, polymorphism, exceptions, and other features. This is a subset of the CTS, which all .NET languages are expected to support.

7. How can we apply themes in ASP.NET application?
Answer: A theme is a collection of settings that define the look of controls and web pages. These themes are applied across all the pages in a web application to maintain a consistent appearance. Themes are included images and skin files; the skin files set the visual properties of ASP.NET controls. Themes are of two types:

Page Theme

A Page theme contains the control skins, style sheets, graphic files, and other resources inside the subfolder of the App_Theme folder in the Solution Explorer window. A page theme is applied to a single page of the web site.

Global Theme

A Global theme is a theme that is applied to all the web sites on a web server and includes property settings, and graphics. This theme allows us to maintain all the websites on the same web server and define the same style for all the web pages of the web sites.

8. Which method do you use to enforce garbage collection in .NET?
Answer: The System.GC.Collect() method.

9. What are the different types of indexes in .Net?

There are two types of indexes in .Net:

Clustered index and non-clustered index

10. How can you identify that the page is posted back?
There is a property, named as “IsPostBack” property. You can check it to know that the page is post backed or not.

11. What is the full form of ADO?
The full form of ADO is ActiveX Data Object.

12. What is Click Once?
Answer: ClickOnce is a new deployment technology that allows you to create and publish self-updating applications that can be installed and run with minimal user interaction.

13. What is Ajax in ASP.NET?
Answer: Ajax stands for Asynchronous JavaScript and XML; in other words, Ajax is the combination of various technologies such as JavaScript, CSS, XHTML, DOM, etc.

AJAX allows web pages to be updated asynchronously by exchanging small amounts of data with the server behind the scenes. This means that it is possible to update parts of a web page, without reloading the entire page.

We can also define Ajax is a combination of client-side technologies that provides asynchronous communication between the user interface and the web server so that partial page rendering occurs instead of complete page postback.

Ajax is platform-independent; in other words, AJAX is a cross-platform technology that can be used on any Operating System since it is based on XML & JavaScript. It also supports open source implementation of other technology. It partially renders the page to the server instead of complete page postback. We use AJAX for developing faster, better and more interactive web applications. AJAX uses an HTTP request between the webserver & browser.

With AJAX, when a user clicks a button, you can use JavaScript and DHTML to immediately update the UI, and spawn an asynchronous request to the server to fetch results.

When the response is generated, you can then use JavaScript and CSS to update your UI accordingly without refreshing the entire page. While this is happening, the form on the user’s screen doesn’t flash, blink, disappear, or stall.

The power of AJAX lies in its ability to communicate with the server asynchronously, using an XMLHttpRequest object without requiring a browser refresh.

Ajax essentially puts JavaScript technology and the XMLHttpRequest object between your Web form and the server.

14. What is the global assembly cache (GAC)?
Answer: GAC is a machine-wide cache of assemblies that allows .NET applications to share libraries. GAC solves some of the problems associated with DLL’s (DLL Hell).

15. What is the use of Error Provider Control in .NET?
Answer: The ErrorProvider control is used to indicate invalid data on a data entry form. Using this control, you can attach error messages that display next to the control when the data is invalid, as seen in the following image. A red circle with an exclamation point blinks, and when the user mouses over the icon, the error message is displayed as a tooltip.

16. What is the PostBack property in ASP.NET?
Answer: If we create a web page, which consists of one or more Web Controls that are configured to use AutoPostBack (Every Web controls will have their own AutoPostBack property), the ASP.NET adds a special JavaScipt function to the rendered HTML Page. This function is named _doPostBack() . When Called, it triggers a PostBack, sending data back to the webserver.

ASP.NET also adds two additional hidden input fields that are used to pass information back to the server. This information consists of the ID of the control that raised the event and any additional information if needed. These fields will empty initially as shown below,

The following actions will be taken place when a user changes a control that has the AutoPostBack property set to true:

On the client-side, the JavaScript _doPostBack function is invoked, and the page is resubmitted to the server.
ASP.NET re-creates the Page object using the .aspx file.
ASP.NET retrieves state information from the hidden view state field and updates the controls accordingly.
The Page. The load event is fired.
The appropriate change event is fired for the control. (If more than one control has been changed, the order of change events is undetermined.)
The Page.PreRender event fires and the page is rendered (transformed from a set of objects to an HTML page).
Finally, Page. Unload event is fired.
The new page is sent to the client.
17. Explain Cookie-less Session in ASP.NET?
Answer: By default, a session uses a cookie in the background. To enable a cookie-less session, we need to change some configuration in the Web. Config file. Follow these steps:

Open Web.Config file.
Add a tag under the tag.

Add an attribute “cookieless” in the tag and set its value to “AutoDetect” like below:

The possible values for the “cookieless” attribute are:
AutoDetect: Session uses background cookie if cookies are enabled. If cookies are disabled, then the URL is used to store session information.
UseCookie: Session always uses background cookie. This is the default.
UseDeviceProfile: Session uses background cookie if the browser supports cookies else URL is used.
user: Session always uses URL.

“regenerateExpiredSessionId” is used to ensure that if a cookieless URL is expired a new URL is created with a new session. And if the same cookieless URL is being used by multiple users at the same time, they all get a new regenerated session URL.

18. How is it possible for .NET to support many languages?
Answer: The .NET language code is compiled to Microsoft Intermediate Language (MSIL). The generated code is called managed code. This managed code is run in a .NET environment. So after compilation, the language is not a barrier and the code can call or use the function of another language also.

19. What is Themes in ASP.NET?
Answer: A theme decides the look and feel of the website. It is a collection of files that define the looks of a page. It can include skin files, CSS files & images.

We define themes in a special App_Themes folder. Inside this folder is one or more subfolders named Theme1, Theme2, etc. that define the actual themes. The theme property is applied late in the page’s life cycle, effectively overriding any customization you may have for individual controls on your page.

How to apply themes

There are 3 different options to apply themes to our website:

Setting the theme at the page level: the Theme attribute is added to the page directive of the page.
Setting the theme at the site level: to set the theme for the entire website you can set the theme in the web.config of the website. Open the web.config file and locate the element and add the theme attribute to it:

Setting the theme programmatically at runtime: here the theme is set at runtime through coding. It should be applied earlier in the page’s life cycle ie. Page_PreInit event should be handled for setting the theme. The better option is to apply this to the Base page class of the site as every page in the site inherits from this class.
Page.Theme = Theme1;
Uses of Themes

Since themes can contain CSS files, images, and skins, you can change colors, fonts, positioning, and images simply by applying the desired themes.

You can have as many themes as you want and you can switch between them by setting a single attribute in the (Azure Training )web.config file or an individual apex page. Also, you can switch between themes programmatically.

Setting the themes programmatically, you are offering your users a quick and easy way to change the page to their likings.

Themes allow you to improve the usability of your site by giving users with vision problems the option to select a high contrast theme with large font size.

20. What are the Navigations technique in ASP.NET?
Answer: Navigation can cause data loss if it not properly handled. We do have many techniques to transfer data from one page to another but every technique has its own importance and benefits.

We will discuss the following techniques in this article.

Cross page posting

21. What is master page in ASP.NET?
Answer: The extension of MasterPage is ‘.master’. MasterPage cannot be directly accessed from the client because it just acts as a template for the other Content Pages. In a MasterPage, we can have content either inside ContentPlaceHolder or outside it. Only content inside the ContentPlaceHolder can be customized in the Content Page. We can have multiple masters in one web application. A MasterPage can have another MasterPage as Master to it. The MasterPageFile property of a web form can be set dynamically and it should be done either in or before the Page_PreInit event of the WebForm. Page.MasterPageFile = “MasterPage.master”. The dynamically set Master Page must have the ContentPlaceHolder whose content has been customized in the WebForm.

A master page is defined using the following code:

<%@ master language=”C#” %>

Adding a MasterPage to the Project

Add a new MasterPage file (MainMaster.master) to the Web Application.
Change the Id of ContentPlaceHolder into “cphHead” and the Id “ContentPlaceHolder1” to “cphFirst”.Add one more ContentPlaceHolder (cphSecond) to Master page.To the master page add some header, footer and some default content for both the content place holders.

Header…This is First Content Place Holder (Default) </asp: ContentPlaceHolder>

This is the Second Content Place Holder (Default).


22. What is tracing in .NET?
Answer: Tracing helps to see the information of issues at the runtime of the application. By default Tracing is disabled.

Tracing has the following important features:

We can see the execution path of the page and application using the debug statement.
We can access and manipulate trace messages programmatically.
We can see the most recent tracing of the data.
Tracing can be done with the following 2 types.
Page Level: When the trace output is displayed on the page and for the page-level tracing we need to set the property of tracing at the page level.

<%@ Page Trace=” true” Language=” C#” Application: Level: In Application-Level tracing the information is stored for each request of the application. The default number of requests to store is 10. But if you want to increase the number of requests and discard the older request and display a recent request then you need to set the property in the web.config file.

23. What are the data controls available in ASP.NET?
Answer: The Controls having DataSource Property are called Data Controls in ASP.NET. ASP.NET allows the powerful feature of data binding, you can bind any server control to simple properties, collections, expressions and/or methods. When you use data binding, you have more flexibility when you use data from a database or other means. Data Bind controls are container controls. Controls -> Child Control

Data Binding is binding controls to data from databases. With data binding, we can bind a control to a particular column in a table from the database or we can bind the whole table to the data grid. (svr technologies)

Data binding provides a simple, convenient, and powerful way to create a read/write link between the controls on a form and the data in their application.

Data binding allows you to take the results of properties, collection, method calls, and database queries and integrate them with your ASP.NET code. You can combine data binding with Web control rendering to relieve much of the programming burden surrounding Web control creation. You can also use data binding with ADO.NET and Web controls to populate control contents from SQL select statements or stored procedures.

Data binding uses a special syntax:

The <%#, which instructs ASP.NET to evaluate the expression. The difference between data binding tags and regular code insertion tags <% and %> becomes apparent when the expression is evaluated. Expressions within the data binding tags are evaluated only when the DataBind method in the Page objects or Web control is called.

Data Bind Control can display data in the connected and disconnected model.

Following are data-bind controls in ASP.NET:

Repeater Control
DataGrid Control
DataList Control
GridView Control
BulletList etc.
24. What is WebParts in ASP.NET?
Answer: ASP.NET 2.0 incorporates the concept of WEB PARTS in itself and we can code and explore that as easily as we have done with the other controls in the previous sessions.

We can compose web parts pages from “web parts”, which can be web controls, user controls. ( python online training )

Component of Web Parts:

The web parts consist of different components like:

Web Part Manager
Web Part Zone
catalog Part
catalog Zone
Connections Zone
Editor Part
Editor Zone
Web Part Zone
Web Part Zone can contain one or more Web Part controls.
This provides the layout for the Controls it contains. A single ASPX page can contain one or more Web Part Zones.
A Web Part Control can be any of the controls in the toolbox or even the customized user controls.

25. What is the meaning of Immutable?
Answer: Immutable means once you create a thing, you cannot modify it.

For example: If you want to give new value to old value then it will discard the old value and create a new instance in memory to hold the new value.

26. What are the various objects in Data set?
Answer: The DataSet class exists in the System. Data namespace.

The Classes contained in the DataSet class are:

a) DataTable
b) DataColumn
c) DataRow
d) Constraint
e) DataRelation

27. What are the advantages of using session?
Answer: The advantages of using session are:

A session stores user states and data all over the application.
It is very easy to implement and we can store any kind of object.
It can store every user data separately.
The session is secure and transparent from the user because the session object is stored on the server.( oracle apex training online )

28. What are the disadvantages of using session?
Answer: The disadvantages of using session are:

Performance overhead occurs in case of a large number of users because session data is stored in server memory.
Overhead involved in serializing and De-Serializing session Data. Because In case of StateServer and SQLServer session mode we need to serialize the object before store.

29. What is Data Cache in ASP.NET and how to use?
Answer: Data Cache is used to store frequently used data in the cache memory. It’s much efficient to retrieve data from the data cache instead of the database or other sources. We need to use the System.Web.Caching namespace. The scope of the data cache is within the application domain unlike “session”. Every user is able to access this object.

When client request to the server, server execute the stored procedure or function or select statements on the Sql Server database then it returns the response to the browser. If we run again the same process will happen on the webserver with sql server.

30. How to create data cache?
Answer: Cache [“Employee”] = “DataSet Name”

We can create data caching use Cache Keyword. It’s located in the System.Web.Caching namespace. It’s just like assigning value to the variable.

31. How to remove a Data Cache?
Answer: We can remove the Data Cache manually.

//We need to specify the cache name
Cache.Remove(String key);

32. Enterprise Library in ASP.NET?
Answer: Enterprise Library: It is a collection of application blocks and core infrastructure. Enterprise library is the reusable software component designed for assisting the software developers.

We use the Enterprise Library when we want to build application blocks intended for the use of developers who create a complex enterprise-level application.

Enterprise Library Application Blocks

Security Application Block
Security Application Block provides developers to incorporate security functionality in the application. This application can use various blocks such as authenticating and authorizing users against the database.

Exception Handling Application Block
This block provides the developers to create consistency for processing the error that occurs throughout the layers of Enterprise Application.

Cryptography Application Block
Cryptography application blocks provide developers to add encryption and hashing functionality in the applications.

Caching Application Block

Caching Application Block allows developers to incorporate a local cache in the applications.

33. What is an application server?
Answer: As defined in Wikipedia, an application server is a software engine that delivers applications to client computers or devices. The application server runs your server code. Some well-known application servers are IIS (Microsoft), WebLogic Server (BEA), JBoss (Red Hat), WebSphere (IBM).

Compare C# and VB.NET

A detailed comparison can be found over here.

34. What is a base class and derived class?
Answer: A class is a template for creating an object. The class from which other classes derive fundamental functionality is called a base class. For e.g. If Class Y derives from Class X, then Class X is a base class.

The class which derives functionality from a base class is called a derived class. If Class Y derives from Class X, then Class Y is a derived class.

35. What is the state management in ASP.NET?
Answer: State management is a technique that is used to manage a state of an object on different request. It is very important to manage state in any web application. There are two types of state management systems in ASP.NET.

Client-side state management
Server-side state management

36. How do you check whether a DataReader is closed or opened?
Answer: There is a property named “IsClosed” property is used to check whether a DataReader is closed or opened. This property returns a true value if a Data Reader is closed, otherwise, a false value is returned.

37. Which adapter should be used to get the data from an Access database?
Answer: OleDbDataAdapter is used to get the data from an Access database.

Introduction to ASP.NET

38. What are the different validators in ASP.NET?
Answer: ASP.NET validation controls define an important role in validating the user input data. Whenever the user gives the input, it must always be validated before sending it across to various layers of an application. If we get the user input with validation, then chances are that we are sending the wrong data. So, validation is a good idea to do whenever we are taking input from the user.

There are the following two types of validation in ASP.NET:

Client-Side Validation
Server-Side Validation
Client-Side Validation:

When validation is done on the client browser, then it is known as Client-Side Validation. We use JavaScript to do the Client-Side Validation.

Server-Side Validation:

When validation occurs on the server, then it is known as Server-Side Validation. Server-Side Validation is a secure form of validation. The main advantage of Server-Side Validation is if the user somehow bypasses the Client-Side Validation, we can still catch the problem on server-side.

The following are the Validation Controls in ASP.NET:

RequiredFieldValidator Control
CompareValidator Control
RangeValidator Control
RegularExpressionValidator Control
CustomFieldValidator Control
39. What are the basic requirements for connection pooling?
Answer: The following two requirements must be fulfilled for connection pooling:

There must be multiple processes to share the same connection describing the same parameters and security settings.
The connection string must be identical.

RegularExpressionValidator Control
CustomFieldValidator Control

40. What is an application server?
Answer: As defined in Wikipedia, an application server is a software engine that delivers applications to client computers or devices. The application server runs your server code. Some well-known application servers are IIS (Microsoft), WebLogic Server (BEA), JBoss (Red Hat), WebSphere (IBM).

41. Which are the new features added in .NET framework 4.0?
A list of new features of .NET Framework 4.0:

Improved Application Compatibility and Deployment Support
Dynamic Language Runtime
Managed Extensibility Framework
Parallel Programming framework
Improved Security Model
Networking Improvements
Improved Core ASP.NET Services
Improvements in WPF 4
Improved Entity Framework (EF)
Integration between WCF and WF
42. What are the disadvantages of cookies?
The main disadvantages of cookies are:

A cookie can store only string value.
Cookies are browser dependent.
Cookies are not secure.
Cookies can store only a small amount of data.

43. What is IL?
Answer: IL stands for Intermediate Language. It is also known as MSIL (Microsoft Intermediate Language) or CIL (Common Intermediate Language).

All .NET source codes are first compiled to IL. Then, IL is converted to machine code at the point where the software is installed, or at run-time by a Just-In-Time (JIT) compiler.

44. What is View State?
Answer: View State is the method to preserve the Value of the Page and Controls between round trips. It is a Page-Level State Management technique. View State is turned on by default and normally serializes the data in every control on the page regardless of whether it is actually used during a post-back.

A web application is stateless. That means that a new instance of a page is created every time when we make a request to the server to get the page and after the round trip our page has been lost immediately

Features of View State
These are the main features of view state:
Retains the value of the Control after post-back without using a session.
Stores the value of Pages and Control Properties defined in the page.
Creates a custom View State Provider that lets you store View State Information in a SQL Server Database or in another data store.
Advantages of View State

Easy to Implement.
No server resources are required: The View State is contained in a structure within the page load.
Enhanced security features: It can be encoded and compressed or Unicode implementation.

45. What is the difference between trace and debug?
Debug class is used to debug builds while Trace is used for both debug and release builds.

46. What are the different Session state management options available in ASP.NET?
Answer: State Management in ASP.NET

A new instance of the Web page class is created each time the page is posted to the server.

In traditional Web programming, all information that is associated with the page, along with the controls on the page, would be lost with each roundtrip.

The Microsoft ASP.NET framework includes several options to help you preserve data on both a per-page basis and an application-wide basis.
These options can be broadly divided into the following two categories:

Client-Side State Management Options
Server-Side State Management Options
Client-Side State Management

Client-based options involve storing information either on the page or on the client computer.

Some client-based state management options are:

Hidden fields
View state
Query strings
Server-Side State Management

There are situations where you need to store the state information on the server-side.

Server-side state management enables you to manage application-related and session-related information on the server.

ASP.NET provides the following options to manage state at the server-side:

Application state
Session state
State Management
oth, debug and release builds.

47. What are the implementation and interface inheritance?
Answer: When a class (type) is derived from another class(type) such that it inherits all the members of the base type it is Implementation Inheritance.

When a type (class or a struct) inherits only the signatures of the functions from another type it is Interface Inheritance.

In general, Classes can be derived from another class, hence support Implementation inheritance. At the same time Classes can also be derived from one or more interfaces. Hence they support Interface inheritance.

Source: Exforsys.

48. How do you prevent a class from being inherited?
Answer: In VB.NET you use the NotInheritable modifier to prevent programmers from using the class as a base class. In C#, use the sealed keyword.

49. Explain Different Types of Constructors in C#?

There are four different types of constructors you can write in a class –

1. Default Constructor

2. Parameterized Constructor

3. Copy Constructor

4. Static Constructor

50. What are design patterns?
Answer: Design patterns are common solutions to common design problems.

51. What is a connection pool?
Answer: A connection pool is a ‘collection of connections’ which are shared between the clients requesting one. Once the connection is closed, it returns back to the pool. This allows the connections to be reused.

52. What is business logic?
Answer: A connection pool is a ‘collection of connections’ which are shared between the clients requesting one. Once the connection is closed, it returns back to the pool. This allows the connections to be reused.

Note: Browse latest Dot Net Interview Questions and C# Tutorial Videos. Here you can check .net Training details and C# Training Videos for self learning. Contact +91 988 502 2027 for more information.

Leave a Comment