Download as pdf or txt
Download as pdf or txt
You are on page 1of 20

Home  

>  Blog  >   Net  > 

.Net Interview Questions

This post covers the frequently asked .NET Interview Questions and Answers in detail for
basic, intermediate, and advanced .NET professionals.

Rating: 5  ★★★★★  149638

GET TRAINED AND CERTIFIED

If you are looking for .Net Interview Questions & Answers for Experienced or Freshers, you
are at the right place. There are a lot of opportunities from many reputed companies in the world.
According to research .Net has a market share of about 20.90%.

So, You still have the opportunity to move ahead in your career in .Net Analytics. Mindmajix offers
Advanced .Net Interview Questions that help you in cracking your interview & acquiring a
dream career as a .Net Analyst.

We have categorized Net Interview Questions into 3 levels they are:

For Fresher
For Experience

For Advanced

Top 10 .Net Interview Questions and Answers 


Below mentioned are the Top Frequently asked .Net Interview Questions and Answers that will
help you to prepare for the .Net interview. Let's have a look at them.
1. What is the .NET framework?

2. What are the most important aspects of .NET?

3. What are the basic features of OOP?

4. Name some OOP languages

5. What is caching in .NET?

6. What is the difference between Stack and Queue?

7. What is inheritance?

8. What is Polymorphism?

9. What are globalization and localization?

10. What is Multithreading?

If you want to become a certified .Net professional, then visit Mindmajix - A Global
online training platform: “.NET Online Training” Course. This course will help you to
achieve excellence in this domain.

Basic .Net Interview Questions

1. What is .NET?

Ans: .NET is a developer platform to build a variety of applications for web, mobile, desktop, and
IoT. It supports various languages like C#, F#, Visual Basic, J#, C++, etc. for building applications.

2. What is the .NET framework?

Ans: The .NET framework is a software development platform that supports an object-oriented
approach. It offers services, like memory management, networking, security, and type safety.

3. What languages does the .NET Framework support?

Ans: .NET Framework supports over 60 programming languages, out of these 11 programming
languages are designed and developed by Microsoft.

4. What are the most important aspects of .NET?


Ans: .NET is an open-source platform containing around 32 programming languages and several
tools for application creation. It is highly secure and runs comfortably on multiple computer
platforms.

5. Explain OOP and its relation to the .NET Framework?

Ans: OOP is the acronym for Object-Oriented Programming. It is a programming structure that
uses self-contained entities called ‘objects’ instead of methods to achieve the desired functionality.
OOP allows .NET developers to create modular programs and classes containing methods,
properties, fields, events, and other logical modules.

6. What are the basic features of OOP?

Ans: The basic features of OOP are:

Encapsulation: Creation of self-contained modules that bind together the data and the
functions that access that data.
Abstraction: Handles complexity and allows the implementation of further complex logic
without disclosing it to the user object.
Polymorphism: Operation performed depends upon the context at runtime to facilitate
easy integration.
Inheritance:  Creation of classes in a hierarchy to enable a class to inherit behavior from its
parent class allowing reuse of code.

Related Article: OOP Interview Questions and Answers

7. Name some OOP languages?

Ans: Simula was the first OOP language and Java, JavaScript, Python, C++, Visual Basic. NET, Ruby,
Scala, PHP are few others.
8. What is JIT?

Ans: JIT stands for Just In Time. It is a compiler in CLR responsible for the execution of .NET
programs of different languages by converting them into machine code. It speeds up the code
execution and supports multiple platforms.

9. What are the different types of JIT Compilers?

Ans: There are 3 types of JIT Compilers:

i. Pre-JIT compiler: It compiles all the source code into the machine code in a single compilation
cycle, i.e. at the application deployment time.

ii. Normal JIT Compiler: The source code methods required at run-time are compiled into
machine code and stored in the cache to be called later.

iii. Econo JIT Compiler: The methods required only at run-time are compiled using this compiler
and they are not stored for future use.

10. What is BCL?

Ans: BCL stands for Base Class Library. It comprises classes, interface, and value types. It is the
foundation for building .NET Framework applications, components, and controls.

11. What is FCL?

Ans: FCL stands for Framework Class Library and is a collection of reusable types, including
classes, interfaces, and data types included in the .NET Framework. It is used for developing a
wide variety of applications, as it provides access to system functionality.

12. What is caching in .NET?

Ans: Caching functionality in .NET Framework allows data storage in memory for rapid access. It
helps improve performance by making data available, even if the data source is temporarily
unavailable, and enhances scalability.

13. What are the types of caching in .NET?

Ans: There are 3 types of caches in .NET:


In-Memory Cache
Persistent in-process Cache
Distributed Cache

Related Article: Learn .Net Libraries

14. What is a cross-page posting?

Ans: Cross-page posting is used to submit a form to a different page while creating a multi-page
form to collect information from the user. You can specify the page you want to post to using the
PostBackURL attribute.

15. Discuss the difference between constants and read-only variables?

Ans: Constant fields are created using the const keyword and their value remains the same
throughout the program. The Read-only fields are created using a read-only keyword and their
value can be changed. Const is a compile-time constant while Read-only is a runtime constant.

16. Explain the difference between value type and reference type?

Ans: Types in .NET Framework are either Value Type or Reference Type. A Value Type is stored in
the stack and it holds the data within its own memory allocation. While a Reference Type is stored
in the heap and it contains a pointer to another memory location that holds the real data.

17. What are EXE and DLL?

Ans: EXE is an executable file that works as an application and it runs individually as it contains an
entry point. DLL is a Dynamic Link Library which is a supportive file to other applications, and it
cannot run individually.

18. What is the difference between Stack and Heap?

Ans: The stack is used for static memory allocation and access to this memory is fast and simple
to keep track of. Heap is used for dynamic memory allocation and memory allocation to variables
that happen at run time. Accessing the heap memory is complex and slower compared to the
stack.

19. What is the difference between Stack and Queue?


Ans: The values in a stack are processed following the LIFO (Last-In, First-Out) principle, so all
elements are inserted and deleted from the top end. But a queue lists items on a FIFO (First-In,
First-Out) basis in terms of both insertion and deletion. The elements are inserted from the rear
end in a queue and deleted from the front end.

20. What are the differences between systems. StringBuilder and system.
string?

Ans: System. a .string is immutable and fixed-length, whereas StringBuilder is mutable and
variable length. The size of the .string cannot be changed, but that of the .stringbuilder can be
changed.

Advanced .Net Interview Questions

21. What is the difference between the While and For loop? Provide a .NET
syntax for both loops?

Ans: The For loop provides a concise way of writing the loop structure, but the While loop is a
control flow statement that allows repetitive execution of the code. Initialization, condition
checking, iteration statements are written at the top of the For loop, but only initialization and
condition checking is done at the top of the while loop.

Syntax:

While loop:

while(condtion) {

//statements to excute.

For loop:

for(intialization; condition; Increment or decrement){


// statements to be excuted.

22. What are a base class and derived class?

Ans: The base class is a class whose members and functions can be inherited, and the derived
class is the class that inherits those members and may also have additional properties.  

23. What is the extension method for a class?

Ans: The extension method is used to add new methods in the existing class or the structure
without modifying the source code of the original type. Special permission from the original type
or re-compiling it isn’t required.

24. What is inheritance?

Ans: Inheritance is a method for creating hierarchies of objects wherein one class, called a
subclass, is based on another class, called a base class.

25. What is the inheritance hierarchy?

Ans: Inheritance hierarchy is a singly rooted tree structure for organizing classes.

26. What are implementation inheritance and interface inheritance?

Ans: Implementation inheritance is when a class inherits all members of the class from which it is
derived. Interface inheritance is when the class inherits only signatures of the functions from
another class.

27. How can a class be prevented from being inherited?

Ans: To prevent a class from being inherited, the sealed keyword in C# can be used. The
NotInheritable keyword can be used in VB.NET to prevent accidental inheritance of the class.

28. What is a constructor in C#?


Ans: A constructor is a special method of the class that contains a collection of instructions and
gets automatically invoked when an instance of the class is created.

29. Explain Different Types of Constructors in C#?

Ans: There are 5 types of constructors in C#, as given below:

Default Constructor: It is without any parameters.


Parameterized Constructor: It has one parameter.
Copy Constructor: It creates an object by copying variables from another object.
Static Constructor: It is created using a static keyword and will be invoked only once for all
of the instances of the class.
Private Constructor: It is created with a private specifier and does not allow other classes
to derive from this class or create an instance of it.

30. Define Method Overriding?

Ans: Method Overriding is a process that allows using the same name, return type, argument,
and invoking the same functions from another class (base class) in the derived class.

31. What is Shadowing?

Ans: Shadowing makes the method of the parent class available to the child class without using
the override keyword. It is also known as Method Hiding.

32. What is the difference between shadowing and overriding?

Ans: Shadowing is used to provide a new implementation for the base class method and helps
protect against subsequent base class modification. Overriding allows you to rewrite a base class
function with a different definition and achieve polymorphism.

33. What is Polymorphism?

Ans: Polymorphism refers to one interface with multiple functions. It means that the same
method or property can perform different actions depending on the run-time type of the instance
that invokes it.

34. What are the types of Polymorphism?


Ans: There are two types of Polymorphism:

i. Static or compile-time polymorphism

ii. Dynamic or runtime polymorphism

35. Do we have multiple inheritances in .NET? Why?

Ans: No, .NET supports only single inheritance due to the diamond problem. Also, it would add
complexity when used in different languages. However, multiple interfaces can solve the purpose.

36. What is the Diamond of Death?

Ans: It is an ambiguity that arises due to multiple inheritances in C#. Two classes B and C inherit
from A, and D inherits from both B and C but doesn’t override the method defined in A. The
Diamond Problem arises when class B or C has overridden the method differently and D cannot
decide to inherit from either B or C.

37. What is an Interface?

Ans: An interface is a declaration for a set of class members. It is a reference type that contains
only abstract members such as Events, Methods, Properties, etc.

38. What are the events and delegates?

Ans: Events notify other classes and objects when the desired action occurs in a class or object. A
delegate is a type-safe function pointer that defines a method signature in CLI.

39. What is business logic?

Ans: It is the application processing layer that coordinates between the User Interface Layer and
Data Access Layer.

40. What is the difference between a component and a control?

Ans: A Component does not draw itself on the form and can be placed below the form area. A
control draws itself on the form and can be placed inside the form area. Also, all controls are
components, but not all components are controls.
41. Differentiate between user controls and custom controls?

Ans: User and Custom controls inherit from different levels in the inheritance tree. Custom
control is designed for use by a single application while user control can be used by more than
one application.

42. What are the functional and non-functional requirements?

Ans: Functional requirements are the basic and mandatory facilities that must be incorporated
into a system. Non-functional requirements are quality-related attributes that the system must
deliver.

43. What is .Net Reflection?

Ans: Reflection objects are used for creating type instances and obtaining type information at
runtime. The classes in the System.Reflection namespace gives access to the metadata of a
running program.

44. What is the Global Assembly Cache (GAC)?

Ans: The Global Assembly Cache is a machine-wide code cache that is stored in a folder in the
Windows directory. It stores the .NET assemblies that are specifically designated to be shared by
all applications executed on the system.

45. What is Object-Role Modeling (ORM)?

Ans: Object-Role Modeling (ORM) is a powerful method for designing and querying information
systems at the conceptual level. It is an easy and understandable description of the application for
non-technical users.

46. What are globalization and localization?

Ans: Globalization is designing and coding culture-neutral and language-neutral applications.


Localization is customizing the application and translating the UI based on specific cultures and
regions.

47. What is MIME?


Ans: MIME stands for Multipurpose Internet Mail Extension. It is an add-on or a supplementary
protocol that allows non-ASCII data to be sent through SMTP. It facilitates the exchange of data
files on the internet and was proposed by Bell Communications in 1991.

48. What is a Hashtable?

Ans: The Hashtable class is a collection that stores key-value pairs. It organizes the pairs based on
the hash code of each key and uses it to access elements in the collection.

49. Name design patterns in the .NET Framework?

Ans: There are 23 design patterns classified into 3 categories:

1. Creational Design Pattern

i. Factory Method

ii. Abstract Factory

iii. Builder

iv. Prototype

v. Singleton

2. Structural Design Patterns

i. Adapter

ii. Bridge

iii. Composite

iv. Decorator

v. Façade

vi. Flyweight

vii. Proxy

3. Behavioral Design Patterns


i. Chain of Responsibility

ii. Command

iii. Interpreter

iv. Iterator

v. Mediator

vi. Memento

vii. Observer

viii. State

ix. Strategy

x. Visitor

xi. Template Method

.Net Interview Questions for Experienced

50. What are the design principles used in .NET?

Ans: Net uses the SOLID design principle which includes the following:

Single responsibility principle (SRP)


Open-Closed Principle (OCP)
Liskov substitution principle (LSP)
Interface segregation principle (ISP)
Dependency inversion principle (DIP)

51.  What is Marshaling?

Ans: Marshaling is the process of transforming types in the managed and unmanaged code.

52.  What are Boxing and Unboxing?


Ans: Boxing and Unboxing is a concept of C#, which enables a unified view of the type system to
treat the value of any type as an object.

53. What is the difference between Server. Transfer and Response. Redirect?

Ans: These are used to redirect a user from one web page to the other one. The Response. The
redirect method requests a new URL and specifies the new URL. The Server. The transfer method
terminates the execution of the current page and starts the execution of a new page.

54. What is Garbage Collection in .NET?

Ans: Garbage Collection in .NET Framework facilitates automatic memory management. It


automatically releases the memory space after all the actions related to the object in the heap
memory are completed.

55. What are the divisions of the Memory Heap?

Ans: The memory heap is divided into three generations.

Generation 0: Used to store short-lived objects. Frequent Garbage Collection happens in this
Generation.

Generation 1: Used for medium-lived objects.

Generation 2: Used for long-lived objects.

56. What is the difference between trace class and debug class?

Ans: The call to Debug class is included in Debug mode only and it is used at the time of
application development. While the call to Trace class will be included in Debug as well as Release
mode also and it is used at the time of application deployment.

57. Differentiate between a Debug build and a Release build?

Ans: Debug builds do not optimize and allow the accurate setting of breakpoints. They contain
debugging symbols, but the code built-in "Release" mode is optimized for speed or size without
any debug data.

58. What is the application object?


Ans: The Application object is used to share information among all users of an application. You
can tie a group of ASP files that work together to perform some purpose.

59. What is the session object?

Ans: A Session object stores information and variables about a user and retains it through the
session.

60. What are managed and unmanaged codes?

Ans: Managed code runs inside CLR and installing the .NET Framework is necessary to execute it.
Unmanaged code does not depend on CLR for execution and is developed using languages
outside the .NET framework.

61. How is a Managed code executed?

Ans: The steps for executing a managed code are as follows:

Choose a language compiler depending on the language of the code.


Convert the code into Intermediate language using its own compiler.
The IL is then targeted to CLR which converts the code into native code using JIT.
Execution of Native code.

62. What are the different parts of an Assembly?

Ans: The different parts of an Assembly are:

i. Manifest: Also known as the assembly metadata, it has information about the version of an
assembly.

ii. Type Metadata: Binary information of the program.

iii. MSIL: Microsoft Intermediate Language code.

iv. Resources: List of related files.

63. What is MVC?

Ans: MVC is an architectural model for building .Net applications. It stands for Model View
Controller. It is easy to use and offers full control over the HTML.
64. Explain the difference between Function and Stored procedure?

Ans: Stored Procedures are pre-compiled objects which execute the code when called for. While a
Function is compiled and executed when it is called for.

65. What is a .NET web service?

Ans: It is a component that allows the publishing of the application's function on the web to make
it accessible to the public. It resides on a Web server and provides information and services using
standard Web protocols such as HTTP and Simple Object Access Protocol (SOAP).

66. What are the advantages of Web Services?

Ans: The advantages of Web Services are:

It is simple to build and supported by a variety of platforms.


It can extend its interface and add new methods without affecting the client's operations.
It is stateless and firewall-friendly.

67. What is MEF?

Ans: MEF stands for Managed Extensibility Framework. It is a library that allows the host
application to consume external extensions without any configuration requirement.

68. What are Tuples?

Ans: Tuples are data structures that hold object properties and contain a sequence of elements of
different data types. They were introduced as a Tuple<T> class in .NET Framework 4.0 to avoid the
need of creating separate types to hold object properties.

69. What is ADO?

Ans: ADO stands for ActiveX Data Objects. It is an application program for writing Windows
applications. It is used to get access to a relational or non-relational database from database
providers such as Microsoft and others.

70. What are the fundamental objects in ADO.NET?

Ans: There are two fundamental objects in ADO.NET:


i. DataReader: connected architecture.

ii. DataSet: disconnected architecture.

71. What is Object Pooling?

Ans: Object Pooling is a concept for optimal use of limited resources through software constructs.
The ready-to-use objects, connections, and threads are stored in a pool (group) of objects in
memory for later use. For creating a new object, it is pulled from the pool and allocated for the
request. Pooling helps in improving performance and facilitates scalability.

72. What are client-side and server-side validations in Web pages?

Ans: Client-side validations take place at the client end with the help of JavaScript and VBScript
offering a better user experience. The inputs for client-side validation are validated in the user’s
browser. While, server-side validations take place at the server end using ASP.Net and PHP, and
the feedback is sent through a dynamically generated new webpage.

73. What is Serialization?

Ans: Serialization is the process of converting the state of an object into a form (a stream of bytes)
to be persisted or transported. Deserialization converts a stream into an object and is the opposite
of serialization. These processes allow data to be stored and transferred.

74. What is a PE file?

Ans: PE stands for Portable Executable. It is a derivative of the Microsoft Common Object File
Format (COFF).  Windows executable. EXE or DLL files follow the PE file format. It consists of four
parts:

1. PE/COFF headers: Contains information regarding. EXE or DLL file.

2. CLR header: Contains information about CLR & memory management.

3. CLR data: Contains metadata of DDLs and MSIL code generated by compilers.

4. Native image section: Contains sections like .data, .rdata, .rsrc, .text etc.

75. What is the difference between DLL and EXE?


Ans: .EXE files are single outbound files that cannot be shared with other applications. DLL files
are multiple inbound files that are shareable.

76. What is the difference between dataset.clone and dataset. copy?

Ans: Dataset.clone copies only the structure of the DataSet which includes all DataTable schemas,
relations, and constraints but it does not copy any data. Dataset. copy is a deep copy of the
DataSet that duplicates both its structure and data.

77. Describe the use of ErrorProvider Control in .NET?

Ans: The ErrorProvider control is used to indicate invalid data or errors to the end-user while
filling a data entry form. In case of invalid data entry, the error message attached to the error
description string is displayed next to the control.

78. Differentiate between Task and Thread in .NET?

Ans: The thread  represents an actual OS-level thread, with its own stack and kernel resources,
and allows the highest degree of control. You can choose to Abort() or Suspend() or Resume() a
thread, and set thread-level properties, like the stack size, apartment state, or culture. While a
Task class from the Task Parallel Library is executed by a TaskScheduler to return a result and
allows you to find out when it finishes.

79. .NET is an OOP or an AOP framework?

Ans: NET is an OOP framework as Encapsulation and Inheritance are key features of the Object-
Oriented Programming framework.

80. What is Multithreading?

Ans: Multi-threading is a process that contains multiple threads each of which performs different
activities within a single process. .NET supports multithreading in two ways:

1. Starting threads with ThreadStart delegates.


2. Using the ThreadPool class with asynchronous methods.
Join Our Newsletter

Stay updated with our newsletter, packed with Tutorials, Interview Questions, How-to's,
Tips & Tricks, Latest Trends & Updates, and more ➤ Straight to your inbox!

Name

Email

Subsc ribe

Course Schedule

Name Dates

.NET Training Jul 08 t o Jul 23 VIEW DETAILS

.NET Training Jul 11 t o Jul 26 VIEW DETAILS

.NET Training Jul 15 t o Jul 30 VIEW DETAILS


Name Dates

.NET Training Jul 18 t o Aug 02 VIEW DETAILS

Last updated: 06 July 2023

About Author

Ravindra Savaram

Ravindra Savaram is a Content Lead at Mindmajix.com. His passion lies in writing articles on
the most popular IT platforms including Machine learning, DevOps, Data Science, Artificial…

Read Mo r e

Recommended Courses

LabVIEW Training MEAN Stack…

 30 hours  1143  40 hours  945

★★★★★ 4.4 ★★★★★ 4.6

14 /15

EXPLORE COURSES
Copyright © 2013 - 2023 MindMajix Technologies

You might also like