If you're looking for .Net Interview Questions & Answers for Experienced or Freshers, you are at right place. There are 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 [Updated 2020] that helps you in cracking your interview & acquire dream career as .Net Analyst.

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

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 into them.

Frequently Asked .Net Interview Questions - [Updated 2020]

Basic .Net Interview Questions

Q1. 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 the applications.

Q2. 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.

Q3. 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.

Q4. 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.

Q5. 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.

Q6. 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 inherit behavior from its parent class allowing reuse of code.

Q7. 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.

Q8. 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.

Q9. 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.

Q10. 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.

Q11. 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.

Q12. 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.

Q13. 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

Q14. 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.

Q15. Discuss the difference between constants and read-only variables.

Ans. Constant fields are created using 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.

Q16. 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.

Q17. 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.

Q18. 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 happens at run time. Accessing the heap memory is complex and slower compared to stack.

Q19. 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.

Q20. What are the differences between system.stringbuilder and system.string?

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

Advanced .Net Interview Questions

Q21. 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.

}

 Q22. What is 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.  

Q23. 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.

Q24. 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.

Q25. What is the inheritance hierarchy?

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

Q26. What is 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.

Q27. 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.

Q28. 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.

Q29. 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.

Q30. 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.

Q31. 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.

Q32. What is the difference between shadowing and overriding?

Subscribe to our youtube channel to get new updates..!

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.

Q33. 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.

Q34. What are the types of Polymorphism?

Ans. There are two types of Polymorphism:

i. Static or compile-time polymorphism

ii. Dynamic or runtime polymorphism

Q35. Do we have multiple inheritance 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.

Q36. 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.

Q37. 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.

Q38. 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.

Q39. What is business logic?

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

Q40. 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.

Q41. 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.

Q42. What are functional and nonfunctional 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.

Q43. 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.

Q44. 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.

Q45. 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.

Q46. 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.

Q47. What is MIME?

Ans. MIME stands for Multipurpose Internet Mail Extension. It is an add-on or a supplementary protocol which 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.

Q48. 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.

Q49. 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

 Q50. 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)

Q51.  What is Marshaling?

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

Q52.  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.

Q53. 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.Redirect method requests a new URL and specifies the new URL. The Server.Transfer method terminates the execution of the current page and starts the execution of a new page.

Q54. 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.

Q55. 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.

Q56. 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.

Q57. Differentiate between a Debug build and Release build?

Ans. Debug builds do not optimize and allow 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.

Q58. 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.

Q59. What is the session object?

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

Q60. What is 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.

Q61. 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.

Q62. 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.

Q63.  What is MVC?

Ans. MVC is an architectural model for building the .Net applications. It stands for Model View Controller. It is easy to use and offers full control over the HTML.

Q64. 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.

Q65. What is .NET web service?

Ans. It is a component that allows 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).

Q66. What are the advantages of Web Services?

Ans. The advantages of Web Services are:

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

ii. It can extend its interface and add new methods without affecting the client's operations.

iii. It is stateless and firewall-friendly.

Q67. 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.

Q68. 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 class in .NET Framework 4.0 to avoid the need of creating separate types to hold object properties.

Q69. 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.

Q70. 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.

Q71. 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.

Q72. 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.

Q73. 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.

Q74. 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.

Q75. 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.

Q76. 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.

Q77. Describe the use of ErrorProvider Control in .NET.

Ans. The ErrorProvider control is used to indicate invalid data or error 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.

Q78. Differentiate between Task and Thread in .NET.

Ans. 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.

Q79. .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.

Q80. 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:

i. Starting threads with ThreadStart delegates.

ii. Using the ThreadPool class with asynchronous methods.

 

Explore .Net Sample Resumes! Download & Edit, Get Noticed by Top Employers!Download Now!