Wednesday, February 27, 2013

IMPORTANT .NET QUESTIONS AND ANSWERS FOR INTERVIEW


1. What are Dead letter queues?


The main use of queue is that you do not need the client and the server running at one time. So it’s possible that a message will lie in queue for long time until the server or client picks it up. But there are scenarios where a message is of no use after a certain time. So these kinds of messages if not delivered within that time span it should not be sent to the user.
Below is the config snippet which defines for how much time the message should being
queue.


deadLetterQueue="Custom"
customDeadLetterQueue="net.msmq://localhost/private/
ServiceModelSamples"
timeToLive="00:00:02"/>


2. what are the various ways of hosting a WCF service?


There are three major ways to host a WCF service:-
1. Self hosting the service in his own application domain. This we have already covered in the first section. The service comes in to existence when you create the object of ServiceHost class and the service closes when you call the Close of the ServiceHost class.
2. Host in application domain or process provided by IIS Server.
3. Host in Application domain and process provided by WAS (Windows Activation Service) Server.


3. can we force garbage collector to run?


System.GC.Collect() forces garbage collector to run.This is not recommended but can be used if situation arises.


4. What is the difference between debug build and release build?

The biggest difference between these is that:

In a debug build the complete symbolic debug information is emitted to help while debugging applications and also the code optimization is not taken into account.

While in release build the symbolic debug info is not emitted and the code execution is optimized.
Also, because the symbolic info is not emitted in a release build, the size of the final executable is lesser than a debug executable.

One can expect to see funny errors in release builds due to compiler optimizations or differences in memory layout or initialization. These are ususally referred to as Release - Only bugs :)

In terms of execution speed, a release executable will execute faster for sure, but not always will this different be significant.


5. Difference between String and Stringbuilder reference types?

System.string provides a set of members for working with text.Like search,replace,concratinate etc.. and strings of type system.string are immutable(that means any change to string causes a runtime to create a new string and abandon old one).
System.stringbuilder is used to dynamic strings which are mutable also.these string classes also overrides operators from System.object.

6. whats the similarilty & difference between .dll extension and .exe extension files?


A standard exe application is one that is created using Standard EXE project. It is the most widely used Project type using VB6. Standard EXE application is normally the most widely used among the available Project types in Visual Basic. Stand-alone programs have an .EXE file extension.

Usage A standard EXE application is normally used when you want to develop a stand-alone application. Examples include calculators, text editors, and other similar applications.

An ActiveX EXE application is one that is created using ActiveX EXE project. ActiveX EXE are widely used in conjunction with standard EXE applications. There are three types of widely used of ActiveX projects. These are:

a. ActiveX EXE
b. ActiveX DLL
c. ActiveX Control

ActiveX EXE: Unlike a stand-alone EXE file, an ActiveX EXE file is designed to work as an OLE server, which is nothing more than a program designed to share information with another program. It has an .EXE file extension.

ActiveX DLL: ActiveX DLL files are not meant to be used by themselves. Instead, these types of files contain subprograms designed to function as building blocks when creating a stand-alone program. It has a .DLL file extension.

ActiveX Control: Unlike an ActiveX DLL or ActiveX EXE file, an ActiveX Control file usually provides both subprograms and a user interface that you can reuse in other programs. It has an .OCX file extension.

Usage 
1. The ActiveX EXE/DLL is normally used when you need to build a component that is separate from the main program. The concept is based on COM model.

2. ActiveX DLL/EXE allows multiple applications to share the same code. This allows for scalability of programs, and saves time because you only need to write the code once.

3. ActiveX DLLs and ActiveX EXEs are almost same in the ways they are built and used. In either case, you build one or more classes that applications can use to do something.

4. One of the main differences between ActiveX EXE and an ActiveX DLL's is that the code is executed within the main program's address space for ActiveX DLL. This is because the code lies inside the program's address space, calling methods and execution of code is very fast.

Differences 

An ActiveX Exe provides the reusability of code, by accessing it from different clients.

An ActiveX Exe is a component that can be called by another application by providing a reference to the component. But a Standard Exe application cannot be called in this way.

An ActiveX EXE's code is run in a separate process. When the main program calls an ActiveX EXE's method, the application passes required parameters into the ActiveX EXE's and calls the method. The ActiveX EXE, upon execution may return the results to the main program. This is slower than running an ActiveX DLL's method inside the main program's address space.

7. If I write System.exit (0); at the end of the try block, will the finally block still execute ?


No in this case the finally block will not execute because when you say System.exit (0); the control immediately goes out of the program, and thus finally never executes.

8. What is the difference between Master- Detail view and MVG?


Following are the main advantages:-
1) MVG Makes effective use of the space.
2) Multiple set of detail records can be viewed from a single
view

8. Difference between VB.NET and C#.

Difference between VB.NET and C#.
VB.NET :
-----------

1)no unsigned int
2)Loosely typed language
3)no operator overloading
4)no pointers
5)no auto XML documentation


C#.net :
-------------
1) supports unsigned int
2)strongly typed language
3)supports operator overloading
4)supports pointers
5)supports auto XML documentation

9. Name a feature which is common to all .NET languages?

There is only one feature which is common to all languages and that is Garbage collection or GC. This feature is automated which relieves developers of much work. This garbage is disposed only when there is need of memory or stress for memory. GC feature halts the application for few seconds before restarting it.

Most Important Questions in Interview


10. Explain the differences between Server-side and Client-side code? 
Ans. Server side code will execute at server (where the website is hosted) end, & all the business logic will execute at server end where as client side code will execute at client side (usually written in javascript, vbscript, jscript) at browser end.

11. What type of code (server or client) is found in a Code-Behind class? 
Ans. Server side code.

12. How to make sure that value is entered in an asp:Textbox control? 
Ans. Use a RequiredFieldValidator control.

13. Which property of a validation control is used to associate it with a server control on that page? 
Ans. ControlToValidate property.

14. How would you implement inheritance using VB.NET & C#? Ans. C# Derived Class : Baseclass
VB.NEt : Derived Class Inherits Baseclass

15. Which method is invoked on the DataAdapter control to load the generated dataset with data? 
Ans. Fill() method.

16. What method is used to explicitly kill a user's session? Ans. Session.Abandon()

17. What property within the asp:gridview control is changed to bind columns manually? 
Ans. Autogenerated columns is set to false

18. Which method is used to redirect the user to another page without performing a round trip to the client? 
Ans. Server.Transfer method.

19. How do we use different versions of private assemblies in same application without re-build? 
Ans.Inside the Assemblyinfo.cs or Assemblyinfo.vb file, we need to specify assembly version.
assembly: AssemblyVersion
20. What’s the difference between Response.Write() and Response.Output.Write()?

Response.Output.Write() allows you to write formatted output.

No comments:

Post a Comment