.Net interview questions

16.Q:What is the purpose of the using() pattern, what about IDisposable and what is their connection with deterministic finalization?

A: The purpose of the using pattern is assuring the invoking of Dispose() if a disposable object(as one implementing IDIsposable) is out of scope, even when this is caused by an error.

17.Q: What is the meaning of a PID and why is it good for solving a system’s issues?

A: The ID process (or individual process) of an application from the Windows environment is simply named PID. For every item from the Process Tab or the Image Name list we have a single unique number. For making it show itself we must hit View menu, the select columns and in the end click PID. In Linux PID has the purpose of debugging processes explicitly, a thing that is not possible in Windows. There is a SDK released by Microsoft named Microsoft Operations management  or MOM that is using PID for selecting the dll’s that are processes have loaded in the memory.  This thing may be useful basically in the case in which processes with memory leaks are traced to dll’s.

18.Q: In what way is a dll different from an exe?

A: From dll’s we can make objects, but from exe’s not. The main difference is that dll’s are in-process components and exe’s are out-process components. Also dll’s are for several usages while exe’s are used alone, dll’s can’t be used as standalone while exe’s can be.

19.Q: What si the meaning and functioning of an inline schema?

A: Inline Shemas  refer to thiose schemas that have the ability to work inside of an XML file. They come in handy in cases in which the separation between the XML document and the schema is not a good choice. The XML document which is defining a structure, the type of data, the constraints and relationships of the components of the contained data is called a schema. It can use XDR or XSD as extension, case in which it is an external schema. An inline schema can function also with the validation off.

20.Q: What is the meaning of resource files and what is their role in .NET?

A: The files which contain data deployed with a program are named resource files, the data is found in several formats like strings, persisted objects or strings. The advantage of these files is that if we use them for data storage ,they don’t have to be compiled when the data gets modified. Usually in .NET the storage represents particular culture information which is stored using the localization of the application’s resources. For deployment we can use satellite assemblies.

21.Q: What is the process for deploying .NET assemblies?

A: One of the processes is using xcopy, alternately we may use the .NET setup projects, or the nontuch deployment.

22.Q:Can we have multiple inheritance in .NET?

A: By multiple inheritance we understand the possibility to inherit multiple base classes, for example a class can have multiple superclasses with the inheritance of various sources and bringing together different behaviors in one class. Multiple inheritance can be: multiple type/interface inheritance or multiple implementation inheritance.VB.NET and C#is compatible just with multiple type/interface inheritance.

23.Q: What is the meaning of a global assembly cache?

A: On every computer which has installed the common language we find a machine-wide code cache under the name of the global assembly cache. This is used for assembly storage so that the multiple computer applications can share those assemblies. The deployment into the global assembly cache can be made in many ways:

a)    With the aid of an installer that is specifically made for the global assembly cache, a way preferred for the assembly installation.

b)    With the aid of a developer tool named the Global Assembly Cache tool from the SDK of the .NET framework.

c)    With the aid of Windows Explorer for dragging the assemblies in the cache.

24.Q: What is the meaning of attributes in .NET?

A:We will find two attribute types in .NET:

a)The metadata attribute that is giving the data the permission to become attached to methods or classes, being a component of the class metadata and we can have acces to it by reflection.

b)The context attribute that has the same syntax as a metadata attribute but basically they still are different. It gives us a way of interception for instance to be activated and method calls to become pre/post processed.

25.Q: In what way is a Release build different from a Debug?

A: The Release build is compiled employing optimization but doesn’t have any symbolic debug details, while the debug build has full symbolic debug details but doesn’t have optimization. If we want to modify theses characteristics it can be made from the Project Configuration properties. Release has a better performance(speed)than debug because it is optimized and has no debug symbols.

Leave a Reply

Your email address will not be published.