Sunday, October 02, 2005

[itsdifferent] Dot net ,c#,Sql server question and answer

{\rtf1\ansi\ansicpg1252\uc1 \deff0\deflang1033\deflangfe1033{\fonttbl{\f0\froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f1\fswiss\fcharset0\fprq2{\*\panose 020b0604020202020204}Arial;}
{\f44\fswiss\fcharset0\fprq2{\*\panose 020b0604030504040204}Verdana;}{\f77\froman\fcharset238\fprq2 Times New Roman CE;}{\f78\froman\fcharset204\fprq2 Times New Roman Cyr;}{\f80\froman\fcharset161\fprq2 Times New Roman Greek;}
{\f81\froman\fcharset162\fprq2 Times New Roman Tur;}{\f82\froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\f83\froman\fcharset178\fprq2 Times New Roman (Arabic);}{\f84\froman\fcharset186\fprq2 Times New Roman Baltic;}
{\f85\fswiss\fcharset238\fprq2 Arial CE;}{\f86\fswiss\fcharset204\fprq2 Arial Cyr;}{\f88\fswiss\fcharset161\fprq2 Arial Greek;}{\f89\fswiss\fcharset162\fprq2 Arial Tur;}{\f90\fswiss\fcharset177\fprq2 Arial (Hebrew);}
{\f91\fswiss\fcharset178\fprq2 Arial (Arabic);}{\f92\fswiss\fcharset186\fprq2 Arial Baltic;}{\f429\fswiss\fcharset238\fprq2 Verdana CE;}{\f430\fswiss\fcharset204\fprq2 Verdana Cyr;}{\f432\fswiss\fcharset161\fprq2 Verdana Greek;}
{\f433\fswiss\fcharset162\fprq2 Verdana Tur;}{\f436\fswiss\fcharset186\fprq2 Verdana Baltic;}}{\colortbl;\red0\green0\blue0;\red0\green0\blue255;\red0\green255\blue255;\red0\green255\blue0;\red255\green0\blue255;\red255\green0\blue0;
\red255\green255\blue0;\red255\green255\blue255;\red0\green0\blue128;\red0\green128\blue128;\red0\green128\blue0;\red128\green0\blue128;\red128\green0\blue0;\red128\green128\blue0;\red128\green128\blue128;\red192\green192\blue192;}{\stylesheet{
\ql \li0\ri0\widctlpar\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \snext0 Normal;}{\s1\ql \li0\ri0\sb100\sa100\keepn\nowidctlpar\faauto\outlinelevel0\rin0\lin0\itap0
\b\fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext0 heading 1;}{\*\cs10 \additive Default Paragraph Font;}{\*\cs15 \additive \b0\f1\fs18\cf1 \sbasedon10 v111;}}{\info{\author Administrator}{\operator Administrator}
{\creatim\yr2005\mo9\dy12\hr14\min56}{\revtim\yr2005\mo9\dy22\hr11\min55}{\version37}{\edmins19}{\nofpages3}{\nofwords840}{\nofchars4788}{\*\company MCN Solutions}{\nofcharsws0}{\vern8247}}\margl1008\margr1152\margt1008\margb1152
\widowctrl\ftnbj\aenddoc\noxlattoyen\expshrtn\noultrlspc\dntblnsbdb\nospaceforul\hyphcaps0\horzdoc\dghspace120\dgvspace120\dghorigin1701\dgvorigin1984\dghshow0\dgvshow3\jcompress\viewkind4\viewscale100\nolnhtadjtbl \fet0\sectd \linex0\sectdefaultcl
{\*\pnseclvl1\pnucrm\pnstart1\pnindent720\pnhang{\pntxta .}}{\*\pnseclvl2\pnucltr\pnstart1\pnindent720\pnhang{\pntxta .}}{\*\pnseclvl3\pndec\pnstart1\pnindent720\pnhang{\pntxta .}}{\*\pnseclvl4\pnlcltr\pnstart1\pnindent720\pnhang{\pntxta )}}{\*\pnseclvl5
\pndec\pnstart1\pnindent720\pnhang{\pntxtb (}{\pntxta )}}{\*\pnseclvl6\pnlcltr\pnstart1\pnindent720\pnhang{\pntxtb (}{\pntxta )}}{\*\pnseclvl7\pnlcrm\pnstart1\pnindent720\pnhang{\pntxtb (}{\pntxta )}}{\*\pnseclvl8\pnlcltr\pnstart1\pnindent720\pnhang
{\pntxtb (}{\pntxta )}}{\*\pnseclvl9\pnlcrm\pnstart1\pnindent720\pnhang{\pntxtb (}{\pntxta )}}\pard\plain \s1\ql \li0\ri0\sb100\sa100\keepn\nowidctlpar\faauto\outlinelevel0\rin0\lin0\itap0 \b\fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {
Dot net Interview Question: -
\par }\pard\plain \ql \li0\ri0\sb100\sa100\nowidctlpar\faauto\rin0\lin0\itap0 \fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {1. How will u load dynamic assembly? How will create assemblies at runtime?\line 2. If I have more
than one version of one assemblies, then how'll I use old version (how/where\line to specify version number?) in my application?\line 3. What are the differences between Serializa and MarshalByRef and MarshalByVal?\line
4. What is Asynchronous call and how it can be implemented using delegates?\line 5. How to create events for a control? What is custom Events? How to create it ?\line
6. Describe the differences between inline and code behind - which is best in a loosely coupled\line solution and which is best in a tightly coupled solution?\line 7. Without modifying source code if we compile again, will it be generated MSIL again?
\line 9. How CCW and RCW are working?\line 10. What is MTS. Explain it?\line 11. Is the COM architecture same as .Net architecture? What is the difference between them?\line 12. Can we copy a COM dll to GAC folder?\line
13. What is Shared and Repeatable Inheritance?\line 14. What is a Singleton class?\line 15. What are virtual destructors?\line 16. What is the difference between Finalize and Dispose (Garbage Collection)? \line What is close method? How it is diff
erent from Finalize & Dispose?\line 18. What happened when u try to update data in a dataset in .NET while the record is already \line deleted in SQL SERVER as backend?\line OR what is concurrency? How will you avoid concurrency when dealing with dataset?
\line Like, one user is deleting the records one after another in backend and another user is \line trying to update the same row using dataset. What will happen? How will you avoid this\line Problem?\line
19. How do you merge 2 datasets into a third dataset in a simple manner? OR\line if you are executing these statements in CommandObject."Select * from Table1; Select * from Table2"\line How you will deal result set?\line 20. How do you sort a dataset?
\line 21. How do u implement locking concepts for dataset?\line 22. Explain about ASP.Net page Life Cycle?\line 23. What are the contents of cookie?\line 24. How do you create a permanent cookie?\line
25. Can you give an example of what might be best suited to place in the Application_Start \line and Session_Start subroutines?\line 26. Briefly describe the role of global.asax?\line 27. How can u deploy your asp.net application?\line
28. Where do u store our connection string in asp.net application?\line 29. How does ASP.NET framework map client side events to server side events?\line 31. How to do Forms Authentication in asp.net?\line 32. How to do Authorization in asp.net?\line
33. How to do Role-based security?\line 34. What is the other method, other than GET and POST, in ASP.NET?\line 35. How can you debug an ASP page, without touching the code?\line 36. How can u handle Unmanaged code Exceptions in ASP.Net?\line
37. Which is the namespace used to write error message in event Log File?\line 38. What are the page level transaction and class level transaction?\line 39. What are different transaction options?\line 40. What is the namespace for encryption?\line
41. What is the difference between Application and Cache Variables?\line 42. What is the difference between control and component?\line 43. You have defined one page_load event in aspx page and same page_load event in code behind, \line
how will program run?\line 44. How would you get ASP.Net running in Apache web servers - why would you even do this?\line 45. What tags do you need to add within the asp:datagrid tags to bind columns manually?\line
46. How can we create pie chart in asp.net?\line 47. What is AutoEventWireup attribute for?\line 48. What is a proxy in web service? How do I use a proxy server when invoking a web service?\line 49. Asynchronous web service means?\line
50. What are the events fired when web service called?\line 51. How will do transaction in Web service?\line 52. How does SOAP transport happen and what is the role of HTTP in it?\line How u can access a webservice using soap?\line
53. What are the different formatters can be used in both? Why?\line 54. How will you expose/publish a webservice?\line 55. What is a disco file?\line 56. Can u pass SOAP messages through remoting?\line 57. What is web client class and its methods?\line
58. Explain the flow of remoting?\line 59. Explain the concept of data Island?\line 60. How to use XML DOM model on client side using Java Script?\line 61. What are the ways to create a tree view control using XML, XSL and _Javascript?\line
62. What is XpathNavigator?\line 63. What is the use of Template in XSL?\line 64. What is "Well Formed XML" and "Valid XML"?\line 65. How u will do sub string in XSL?\line 66. Can we do sorting in XSL? How do you deal sorting columns dynamically in XML?
\line 67. What is "Async" property of XML means?\line 68. What is Xpath Query?\line 69. Difference between Element and Node?\line 71. Differences between DOM & SAX parsers?\line 72. What is GetElementarybyname method will do?\line
73. What is selectnode method will give?\line 74. What is valid Xml document? What a well formed xml document?\line 75. What is the difference between XmlDocument and XmlDataDocument?\line
76. If i replace my SQLSERVER with xML files and how about handline the same?\line 77. Write syntax to serialize class using XML Serializer?\line 78. How will you do Redo and Undo in a Textcontrol?\line 79. How
to implement Datagrid in .Net? How would you make a combo-box appear in one column\line of a DataGrid? What are the ways to show data grid inside a data grid for a master details \line
type of tables? If we write any code for Datagrid Methods, what is the access specifier\line used for that methods in the code behind file and why?\line 80. How can we create Tree control in asp.net?\line
81. What are the differences between OLEDB and ODBC?\line 82. What are the differences between OLEDB provider and SQL client Provider?\line 83. What is the difference between array and array list?\line 84. What is diffgram, explain how it is used?\line }{
\b\ul More Question:}{
\par }\pard \ql \li0\ri0\widctlpar\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 {\cs15\f44\fs20 1.What is the difference between user controls and custom controls?}{\f44\fs20 \line }{\cs15\f44\fs20 2.what are the 3 types of session state modes?}{
\f44\fs20 \line }{\cs15\f44\fs20 3. what are the 6 types of validation controls in ASP.NET?}{\f44\fs20 \line }{\cs15\f44\fs20 4.What are the 3 types of \~caching in ASP.NET?}{\f44\fs20 \line }{\cs15\f44\fs20 5.How to Manage state in ASP.NET?}{\f44\fs20
\line }{\cs15\f44\fs20 6.What is the difference between overloading and shadowing?}{\f44\fs20 \line }{\cs15\f44\fs20 7.what is the difference between overloading and overriding?}{\f44\fs20 \line }{\cs15\f44\fs20
8.what is the difference between Manifest and Metadata?}{\f44\fs20 \line }{\cs15\f44\fs20 9.What is Boxing and Unboxing?}{\f44\fs20 \line }{\cs15\f44\fs20 10.what are the method parameter in c#?}{\f44\fs20 \line }{\cs15\f44\fs20 11.what a
re value types and reference types?}{\f44\fs20 \line }{\cs15\f44\fs20 12.what are the two activation modes for .NET Remoting?}{\f44\fs20 \line }{\cs15\f44\fs20 13.what's singlecall Activation mode used for ?}{\f44\fs20 \line }{\cs15\f44\fs20
14.what's the singleton Activation mode used for?}{\f44\fs20 \line }{\cs15\f44\fs20 15.what are the channels and Formatters?}{\f44\fs20 \line }{\cs15\f44\fs20 16.What are the two Authentication modes for SQL server connection?}{\f44\fs20 \line }{
\cs15\f44\fs20 17.What is typed dataset?}{\f44\fs20 \line }{\cs15\f44\fs20 18What is DataReader?}{\f44\fs20 \line }{\cs15\f44\fs20 19)Difference between Dataset and Recordset?}{\f44\fs20 \line }{\cs15\f44\fs20 20)What is Global Assembly cache?}{\f44\fs20
\line }{\cs15\f44\fs20 21What is an Assembly, Private Assembly and Shared Assembly? What are the ways to deploy an assembly? }{\f44\fs20 \line }{\cs15\f44\fs20 22.what is an Delegate?}{\f44\fs20 \line }{\cs15\f44\fs20 23.what are webservices?}{\f44\fs20
\line }{\cs15\f44\fs20 24.Define Automatic memory Management:}{\f44\fs20 \line }{\cs15\f44\fs20 25.Define Threading:}{\f44\fs20 \line }{\cs15\f44\fs20 26Difference Between XML AND HTML?}{\f44\fs20 \line }{\cs15\f44\fs20
27.What is XSLT and what is it's use?}{\f44\fs20 \line }{\cs15\f44\fs20 28.What is Diffgram/?}{\f44\fs20 \line }{\cs15\f44\fs20 29.what is the Role of XSL?}{\f44\fs20 \line }{\cs15\f44\fs20 30.What is SAX?}{\f44\fs20 \line }{\cs15\f44\fs20
31.What is Safecode and unsafe code?}{\f44\fs20 \line }{\cs15\f44\fs20 32.Give a few examples of types of applications that can benefit from using XML. }{\f44\fs20 \line }{\cs15\f44\fs20
33.When constructing an XML DTD, how do you create an external entity reference in an attribute value?}{\f44\fs20 \line }{\cs15\f44\fs20 34.Give some examples of XML DTDs or schemas that you have worked with.}{\f44\fs20 \line }{\cs15\f44\fs20
35.What is SOAP and how does it relate to XML?}{\f44\fs20 \line }{\cs15\f44\fs20 36.Explain the concepts of Dataset?}{\f44\fs20 \line }{\cs15\f44\fs20 37.Explain the consideration involved in choosing between ADO& ADO.NET?}{\f44\fs20 \line \line }{
\f44\fs20
\par }\pard \ql \li0\ri0\sb100\sa100\nowidctlpar\faauto\rin0\lin0\itap0 {\f1\fs20
\par }}

{\rtf1\ansi\ansicpg1252\uc1 \deff0\deflang1033\deflangfe1033{\fonttbl{\f0\froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f1\fswiss\fcharset0\fprq2{\*\panose 020b0604020202020204}Arial;}
{\f77\froman\fcharset238\fprq2 Times New Roman CE;}{\f78\froman\fcharset204\fprq2 Times New Roman Cyr;}{\f80\froman\fcharset161\fprq2 Times New Roman Greek;}{\f81\froman\fcharset162\fprq2 Times New Roman Tur;}
{\f82\froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\f83\froman\fcharset178\fprq2 Times New Roman (Arabic);}{\f84\froman\fcharset186\fprq2 Times New Roman Baltic;}{\f85\fswiss\fcharset238\fprq2 Arial CE;}{\f86\fswiss\fcharset204\fprq2 Arial Cyr;}
{\f88\fswiss\fcharset161\fprq2 Arial Greek;}{\f89\fswiss\fcharset162\fprq2 Arial Tur;}{\f90\fswiss\fcharset177\fprq2 Arial (Hebrew);}{\f91\fswiss\fcharset178\fprq2 Arial (Arabic);}{\f92\fswiss\fcharset186\fprq2 Arial Baltic;}}
{\colortbl;\red0\green0\blue0;\red0\green0\blue255;\red0\green255\blue255;\red0\green255\blue0;\red255\green0\blue255;\red255\green0\blue0;\red255\green255\blue0;\red255\green255\blue255;\red0\green0\blue128;\red0\green128\blue128;\red0\green128\blue0;
\red128\green0\blue128;\red128\green0\blue0;\red128\green128\blue0;\red128\green128\blue128;\red192\green192\blue192;}{\stylesheet{\ql \li0\ri0\widctlpar\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0
\fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \snext0 Normal;}{\*\cs10 \additive Default Paragraph Font;}}{\info{\author Administrator}{\operator Administrator}{\creatim\yr2005\mo9\dy12\hr14\min57}{\revtim\yr2005\mo9\dy22\hr11\min35}{\version81}
{\edmins13}{\nofpages9}{\nofwords4521}{\nofchars25773}{\*\company MCN Solutions}{\nofcharsws31651}{\vern8247}}\margl1008\margr1152\margt1152\margb1008
\widowctrl\ftnbj\aenddoc\noxlattoyen\expshrtn\noultrlspc\dntblnsbdb\nospaceforul\hyphcaps0\horzdoc\dghspace120\dgvspace120\dghorigin1701\dgvorigin1984\dghshow0\dgvshow3\jcompress\viewkind4\viewscale100\nolnhtadjtbl \fet0\sectd \linex0\sectdefaultcl
{\*\pnseclvl1\pnucrm\pnstart1\pnindent720\pnhang{\pntxta .}}{\*\pnseclvl2\pnucltr\pnstart1\pnindent720\pnhang{\pntxta .}}{\*\pnseclvl3\pndec\pnstart1\pnindent720\pnhang{\pntxta .}}{\*\pnseclvl4\pnlcltr\pnstart1\pnindent720\pnhang{\pntxta )}}{\*\pnseclvl5
\pndec\pnstart1\pnindent720\pnhang{\pntxtb (}{\pntxta )}}{\*\pnseclvl6\pnlcltr\pnstart1\pnindent720\pnhang{\pntxtb (}{\pntxta )}}{\*\pnseclvl7\pnlcrm\pnstart1\pnindent720\pnhang{\pntxtb (}{\pntxta )}}{\*\pnseclvl8\pnlcltr\pnstart1\pnindent720\pnhang
{\pntxtb (}{\pntxta )}}{\*\pnseclvl9\pnlcrm\pnstart1\pnindent720\pnhang{\pntxtb (}{\pntxta )}}\pard\plain \ql \li0\ri0\sb100\sa100\nowidctlpar\faauto\rin0\lin0\itap0 \fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\b Dot net Q/A.
\par }{1) }{\b What is IL?}{ (What is MSIL or CIL, What is JIT?)\line MSIL is the CPU \endash
independent instruction set into which .Net framework programs are compiled. It contains instructions for loading, storing initializing, and calling methods on objects.\line 2) }{\b What is the CLR?\line }{
Common Language Runtime is the execution engine for .NET Framework applications. It provides a number of services, including the following.\line Code management (loading and execution), Application memory isolation, Verification of type safety, Co
nversion of IL to native code , Access to metadata (enhanced type information), Managing memory for managed objects, Enforcement of code access security, Exception handling, including cross-language exceptions, Interoperation between managed code, COM obj
ects, and pre-existing DLLs (unmanaged code and data), Automation of object layout, Support for developer services (profiling, debugging, and so on) \line 3) What is the }{\b CTS}{?\line
The common type system is a rich type system, built into the common language runtime, t
hat supports the types and operations found in most programming languages. The common type system supports the complete implementation of a wide range of programming languages.
\par 4) What is }{\b CLS (Common}{ Language Specification)?\line The Common Language Specificat
ion is a set of constructs and constraints that serves as a guide for library writers and compiler writers. It allows libraries to be fully usable from any language supporting the CLS, and for those languages to integrate with each other. The Common Langu
a
ge Specification is a subset of the common type system. The Common Language Specification is also important to application developers who are writing code that will be used by other developers. When developers design publicly accessible APIs following the
rules of the CLS, those APIs are easily used from all other programming languages that target the common language runtime.\line 5) What is }{\b Managed Code}{?\line
Managed code is code that is written to target the services of the common language runtime (see What is the
Common Language Runtime?). In order to target these services, the code must provide a minimum level of information (metadata) to the runtime. Managed data\emdash data that is allocated and de-allocated by the common language runtime's garbage collector.
\line 6) What }{\b is Assembly}{
? Assemblies are the building blocks of .NET Framework applications; they form the fundamental unit of deployment, version control, reuse, activation scoping, and security permissions. An assembly is a collection of types and resources that are b
uilt to work together and form a logical unit of functionality. An assembly provides the common language runtime with the information it needs to be aware of type implementations. To the runtime, a type does not exist outside the context of an assembly.
\line 7) What are different types of Assemblies? Single file and multi file assembly. Assemblies can be static or dynamic. Private assemblies and shared assemblies \line
8) What is Namespace? A namespace is a logical naming scheme for types in which a simple type name \line 9) What is Difference between }{\b Namespace and Assembly}{?\line
Namespace is a logical design-time naming convenience, whereas an assembly establishes the name scope for types at run time.\line \line 10) If you want to view a Assembly how to you go about it (: What }{\b is ILDASM}{ ?)?\line
You can use the MSIL Disassembler (Ildasm.exe) to view Microsoft intermediate language (MSIL) information in a file. If the file being examined is an assembly, this information can include the assembly's attributes, as well as references to other modu
les and assemblies. This information can be helpful in determining whether a file is an assembly or part of an assembly, and whether the file has references to other modules or assemblies.\line To view assembly contents \line
At the command prompt, type the following command: \line Ildasm <assembly name> \line In this command, assembly name is the name of the assembly to examine. \line The following example opens the Hello.exe assembly.\line Ildasm Hello.exe
\par 11) What }{\b is Manifest}{?\line Every assembly, whether static or dynamic, contains a col
lection of data that describes how the elements in the assembly relate to each other. The assembly manifest contains this assembly metadata. An assembly manifest contains all the metadata needed to specify the assembly's version requirements and security
i
dentity, and all metadata needed to define the scope of the assembly and resolve references to resources and classes. The assembly manifest can be stored in either a PE file (an .exe or .dll) with Microsoft intermediate language (MSIL) code or in a standa
lone PE file that contains only assembly manifest information.\line
12) Where is version information stored of an assembly? The version number is stored in the assembly manifest along with other identity information, including the assembly name and public key, a
s well as information on relationships and identities of other assemblies connected with the application.\line \line 13) Is versioning applicable to private assemblies?\line 14) }{\b What is GAC}{
(What are situations when you register .NET assembly in GAC?)?\line Each computer wher
e the common language runtime is installed has a machine-wide code cache called the global assembly cache. The global assembly cache stores assemblies specifically designated to be shared by several applications on the computer.\line
There are several ways to d
eploy an assembly into the global assembly cache: 1)Use an installer designed to work with the global assembly cache. This is the preferred option for installing assemblies into the global assembly cache. 2)Use a developer tool called the Global Assembly
Cache tool (Gacutil.exe) provided by the .NET Framework SDK. 3) Use Windows Explorer to drag assemblies into the cache. \line 15) What is concept }{\b of strong names}{
(How do we generate strong names or what is the process of generating strong names, What is use of SN.EXE, How do we apply strong names to assembly? How do you sign an assembly?)?\line A strong name consists of the assembly's identity \emdash
its simple text name, version number, and culture information (if provided) \emdash plus a public key and a digital signature. It
is generated from an assembly file using the corresponding private key. (The assembly file contains the assembly manifest, which contains the names and hashes of all the files that make up the assembly.) \line
There are two ways to sign an assembly with a strong name: \line 1) Using the Assembly Linker (Al.exe) provided by the .NET Framework SDK. \line
2) Using assembly attributes to insert the strong name information in your code. You can use either the AssemblyKeyFileAttribute or the AssemblyKeyNameAttribute, depending on where the key file to be used is located.
\par 16) How to }{\b add and remove an assembly from GAC}{?\line The gacutil.exe that ships with .NET can be used to add or remove a shared assembly from the GAC. To add a shared assembly, from the command line enter: gacutil.e
xe /i myassembly.dll To remove from shared assembly: gacutil.exe /u myassembly.dll 17) What is Delay signing? \line Delay signing allows a developer to add the public key token to an assembly, without having access to the private key token.
\par 18) What is garbage collector?\line The garbage collector's job is to identify objects that are no longer in use and reclaim the memory. What does it mean for an object to be in use?\line 19) Can we force garbage collector to run? \line
Garbage collector works automatically and you cannot force the garbage collector to run. \line 20) What }{\b is reflection}{?\line Reflection is the mechanism of discovering class information solely at run time\line
22) What are Value types and Reference types? \line Reference types are stored on the run-time heap; they may only be acc
essed through a reference to that storage. Because reference types are always accessed through references, their lifetime is managed by the .NET Framework\line
Value types are stored directly on the stack, either within an array or within another type; their st
orage can only be accessed directly. Because value types are stored directly within variables, their lifetime is determined by the lifetime of the variable that contains them\line \line 23) What is concept }{\b of Boxing and Unboxing}{? \line
Boxing and unboxing is a essential concept in. NET\rquote
s type system. With Boxing and unboxing one can link between value-types and reference-types by allowing any value of a value-type to be converted to and from type object. Boxing and unboxing enables a unified view of the type system wherei
n a value of any type can ultimately be treated as an object.\line Converting a value type to reference type is called Boxing. Unboxing is the opposite operation and is an explicit operation.\line 24) What\rquote s difference }{\b between VB.NET and C#?}{
\line Although differences exist between Visual Basic .NET and Visual C# .NET, they are both first-class programming languages that are based on the Microsoft\'ae .NET Framework, and they are equally powerful..."\line
25) What is CODE Access security? Code access security is a mechanism that
helps limit the access code has to protected resources and operations. In the .NET Framework *Primitive : Data types that can be mapped directly to the .NET Framework Class Library (FCL) types are called Primitive. For example, the type "int" is mapped to
System.Int32, "short" is mapped to System.Int16, and so on. In fact, all data types in .NET are derived from the System.Object class. The following two classes are equivalent (in C#):\line // Class implicitly derives from System.Object Class Car\{\}
;Class Car\{\};// Class explicitly derives from System.Object Class Car: System.Object\{\};\line \line }{\b NET Interoperability}{\line 1) How can we use }{\b COM Components in .NET}{ (What is RCW)?\line
Whenever managed client calls a method on a COM object, the runtime creates a runtime callable wrapper
(RCW). NET components can call COM components. COM components can call .NET components. One tool for performing this conversion is called tlbimp (type library importer), and it is provided as part of the .NET Framework Software Developer Kit (SDK). Tlbimp
reads the metadata from a COM type library and creates a matching CLR assembly for calling the COM component. \line
For example, to convert a Visual Basic ActiveX DLL named support.dll to a matching .NET assembly with the name NETsupport.dll, you could use this command line:\line tlbimp support.dll/out: NETsupport.dll \line
2) Once I have developed the COM wrapper do I have to still register the COM in registry?\line \line 3) How can we use .NET components in COM (What is CCW) (COM callable wrapper)? What caution needs to be taken
in order that .NET components are compatible with COM? \line
When a COM client calls a .NET object, the common language runtime creates the managed object and a COM callable wrapper (CCW) for the object. Unable to reference a .NET object directly, COM clients use the CCW as a proxy for the managed object.
\par 4) How can we }{\b make Windows API calls in .NET}{?\line Windows APIs are dynamic link libraries (DLLs) that are part of the Windows operating system. You use them to perform tasks when it is difficult to write equivalent
procedures of your own. For example, Windows provides a function named FlashWindowEx that lets you make the title bar for an application alternate between light and dark shades.\line
The advantage of using Windows APIs in your code is that they can save develo
pment time because they contain dozens of useful functions that are already written and waiting to be used. The disadvantage is that Windows APIs can be difficult to work with and unforgiving when things go wrong.\line
5) When we use windows API in .NET is it managed or unmanaged code? \line \line 6) What }{\b is COM}{?\line
COM is a platform-independent; object-oriented system for creating binary software components that can interact with other COM-based components in the same process space or in other processes on remote machines.
COM is the foundation technology for many other Microsoft technologies, such as Active Server Pages (ASP), Automation, ISAPI, and ActiveSync.\line \line 7) What is Reference counting in COM?\line
The methods in the audio interfaces follow a general set of rules for counting references on the COM objects that they take as input parameters or return as output parameters.\line 7) Can you describe IUnknown interface in short?\line
The components IUnknown interface helps to maintain a reference count of the number of clients using the c
omponent. When this count drops down to zero, the component is unloaded. All components should implement the IUnknown interface. The reference count is maintained through IUnknown:: AddRef() & IUnknown::Release() methods, interface discovery is handled th
rough IUnknown::QueryInterface().\line \line 8)Can you explain what is }{\b DCOM}{?\line Microsoft\'ae Distributed COM (DCOM) extends the Component Object Model (COM) to support communication among objects on different computers\emdash
on a LAN, a WAN, or even the Internet. With DCOM, your application can be distributed at locations that make the most sense to your customer and to the application.\line 9) DTC in .NET?\line
The DTC is a system service that is tightly integrated with COM+. To help make distributed transactions work more seamlessly, CO
M+ directs the DTC on behalf of an application. This makes it possible to scale transactions from one to many computers without adding special code.\line
The DTC proxy DLL (Msdtcprx.dll) implements the DTC interfaces. Applications call DTC interfaces to initiate, commit, abort, and inquire about transactions\line 10) How many types of Transactions are there in COM + .NET? \line
11) How do you do object pooling in .NET? \line \line }{\b ASP.NET\line }{1) What\rquote s the sequence in which ASP.NET events are processed? \line a) Initialize: Initialize settings needed during the lifetime of the incoming Web request.\line
b) Load view state: At the end of this phase, the ViewState property of a control is automatically populated\line c) Process postback data: Process incoming form data and update properties accordingly.\line
d) Load: Perform actions common to all requests, such as setting up a database query. At this point, server controls in the tree are created and initialized, the state is restored, and form controls reflect client-side data.\line
e) Send postback change notifications: Raise change events in response to state changes between the current and previous postbacks.\line
f) Handle postback events: Handle the client-side event that caused the postback and raise appropriate events on the server.\line g) Prerender: Perform any upd
ates before the output is rendered. Any changes made to the state of the control in the prerender phase can be saved, while changes made in the rendering phase are lost.\line
h) Save state: The ViewState property of a control is automatically persisted to a str
ing object after this stage. This string object is sent to the client and back as a hidden variable. For improving efficiency, a control can override the SaveViewState method to modify the ViewState property.\line
i) Render: Generate output to be rendered to the client.\line j) Dispose: Perform any final cleanup before the control is torn down. References to expensive resources such as database connections must be released in this phase.\line
k) Unload: Perform any final cleanup before the control is torn down. Control authors generally perform cleanup in Dispose and do not handle this event.\line Initialization, Page Load, PreRendor, Page unload
\par 2) In which event are the controls fully loaded? \line \line 3) How can we identify that the Page is }{\b PostBack}{? VB: Public Readonly Property IsPostback as Boolean C#: Public bool IsPostBack \{get;\}\line \line 4) How does }{\b ASP.NET maintain state
}{ in between subsequent request? \line When a form is submitted in ASP .NET, the form reappears in the browser window together with all form values. This is because ASP .NET
maintains ViewState. The ViewState indicates the status of the page when submitted to the server. The status is defined through a hidden field placed on each page with a <form runat="server"> control. The source could look something like this:\line
<form name =\'94_ct10\'94 method="post" action="page.aspx" id="_ctl0"> <input type="hidden" name="__VIEWSTATE" value = \'93dfdsklgfgfdgfddfdl=\'94 /></form>\line
Maintaining the ViewState is the default setting for ASP.NET Web Forms. If you want to NOT maintain the ViewState, include
the directive <%@ Page EnableViewState="false" %> at the top of an. aspx page or add the attribute EnableViewState="false" to any control.
\par 5) What is }{\b event bubbling}{? \line The ASP.NET page framework provides a technique called event bubbling that allows a child
control to propagate events up its containment hierarchy. Event bubbling enables events to be raised from a more convenient location in the controls hierarchy and allows event handlers to be attached to the original control as well as to the control that
exposes the bubbled event.
\par 6) How do we assign page specific attributes? \line Defines page-specific (.aspx file) attributes used by the ASP.NET page parser and compiler. Example: <%@ Page attribute="value" [attribute="value"...] %>\line 7) Administrator wants to ma
ke a security check that no one has tampered with ViewState, how can we ensure this? \line
Microsoft has provided two mechanisms for increasing the security of ViewState. a) Machine Authentication Check (MAC) - tamper-proofing <%@ Page EnableViewStateMac="true"
%> b) Encrypting the ViewState This encryption can only be applied at the machine.config level, as follows: <machineKey validation='3Des' />
\par 8) @ }{\b Register directives}{? \line Associates aliases with namespaces and class names for concise notation in custom server control syntax.\line <%@ Register tagprefix="tagprefix" Namespace="namespace" Assembly="assembly %>\line
<%@ Register tagprefix="tagprefix" Tagname="tagname" Src="pathname" %>\line \line 9) What\rquote s the use of SmartNavigation property?\line Gets or sets a value indicating whether smart navigation is enabled.\line
VB: Public Property SmartNavigation As Boolean\line C#: Public bool SmartNavigation \{get; set;\}
\par 10) What is }{\b AppSetting Section in \'93Web.Config}{\'94 file? \line The <appSettings> element of a web.config file is a place to store connection str
ings, server names, file paths, and other miscellaneous settings needed by an application to perform work. The items inside appSettings are items that need to be configurable depending upon the environment; for instance, any database connection strings wi
ll change as you move your application from a testing and staging server into production. \line 11) Where }{\b is ViewState information stored}{? \line
The ViewState is stored in the page as a hidden form field. When the page is posted, one of the first tasks performed by page processing is to restore the view state.\line \line 12) What\rquote s the use of @ }{\b OutputCache directive in ASP.NET}{?
\line The output cache respects the expiration and validation policies for pages\line <%@ OutputCache Duration="60" VaryByParam="none"%>\line Output caching is a power
ful technique that increases request/response throughput by caching the content generated from dynamic pages. Output caching is enabled by default, but output from any given response is not cached unless explicit action is taken to make the response cache
able.
\par 13) How can we create }{\b custom controls in ASP.NET}{?\line
To create a simple custom control, define a class that derives from System.Web.UI.Control and override its Render method. The Render method takes one argument of type System.Web.UI.HtmlTextWriter. The
HTML that your control wants to send to the client is passed as a string argument to the Write method of HtmlTextWriter. \line \line 14) How many types }{\b of validation controls}{ are provided by ASP.NET? \line
A Validation server control is used to validate the data of an input control. If the data does not pass validation, it will display an error message to the user.\line The syntax: <asp: control_name id="some_id\'94 runat="server" />\line
RequiredFieldValidator: Checks that the user enters a value that falls between two values\line RegularExpressionValidator: Ensures that the value of an input control matches a specified pattern RequiredFieldValidator\line
CustomValidator: Allows you to write a method to handle the validation of the value entered\line RangeValidator: Checks that the user enters a value that falls between two values\line
CompareValidator: Compares the value of one input control to the value of another input control or to a fixed value \line ValidationSummary: Displays a report of all validation errors occurred in a Web page\line 15) Can you explain what is \'93
AutoPostBack\'94 feature in ASP.NET? \line AutoPostBack automatically posted whenever the form containing textbox control Text Changed.\line 16) }{\b Paging in DataGrid}{? \line
The ASP.NET DataGrid control provides a built-in engine for paging through bound data. The engine supports two working modes\emdash
automatic and manual. Automatic paging means that you bind the whole data source to the control and let it go. The control displays a proper navigation bar and handles users clicking on the movement buttons. Automatic paging doesn\rquote
t require a deep understanding of the grid\rquote
s internals, nor does it take you much time to arrange an effective solution. For large data sets, though, it might not be a smart option. Handcrafted, custom paging is the alternative. Custom paging means th
at the host page is responsible for filling the grid control with up-to-date information. When the grid\rquote s current page index is, say, \'933\'94 the page must provide the set of records that fit in page number 3.
\par 17) What\rquote s the use of }{\b \'93GLOBAL.ASAX}{\'94 file? \line The Glo
bal.asax file, called the ASP.NET application file, provides a way to respond to application or module level events in one central location. You can use this file to implement application security, as well as other tasks. Every ASP.Net application can con
tain single Global.asax in its root directory. Can be use to handle application wide events and declare application wide objects. \line \line 18) What\rquote s the difference between \'93}{\b Web.config\'94 and \'93Machine.Config}{\'94? \line
Web.config is a security in ASP.Net application and how to secure applications. Web.config does most of the work for the application the who, what, where, when and how to be authenticated\line
Machine.config contains settings that apply to an entire computer. This file is located in the %runtime install path%\\Config directory. Machine.config contains configuration settings for machine-wide assembly binding, built-in remoting channels\line
\line 19) What\rquote s a SESSION and APPLICATION object? \line 20) What\rquote s difference between }{\b Server.Transfer and Response.Redirect}{? \line Response.Redirect
simply sends a message down to the browser, telling it to move to another page. So, you may run code like: Response.Redirect ("WebForm2.aspx") Server.Transfer is similar in that it sends the user to another page with a statement such as Server.Transfer,
"
transfer" process can work on only those sites running on the server, you can't use Server.Transfer to send the user to an external site. Only Response.Redirect can do that. Transferring to another page using Server.Transfer conserves server resources. In
s
tead of telling the browser to redirect, it simply changes the "focus" on the Web server and transfers the request. This means you don't get quite as many HTTP requests coming through, which therefore eases the pressure on your Web server and makes your a
pplications run faster.\line 21) What\rquote s difference between Authentication and authorization? \line
Authentication and Authorization are two interrelated security concepts. In short, authentication is a process of identifying a user, while authorization is the process of determining if an authenticated user has access to the resource(s) they requested.
\line \line 22) What is impersonation in ASP.NET? \line Impersonation is when ASP.NET executes code in the context of an authenticated and authorized client. By default, ASP.NET does no
t use impersonation and instead executes all code using the same user account as the ASP.NET process, which is typically the ASPNET account. <Identity impersonate="true" UserName="domain\\user" Password="password"/>\line \line
24) What are the various ways of }{\b authentication techniques}{ in ASP.NET? \line
ASP.NET provides built-in support for user authentication through several authentication providers: Forms-based authentication: the application is secured by using a custom authentication model with cookie support. Passport
authentication: the application is secured by using Microsoft\'ae
Passport authentication. Passport is a single sign-on technology developed by Microsoft for use on the web. Windows authentication: the application is secured by using integrated windows authen
tication where access to a web application is allowed only to those users who are able to verify their windows credentials.\line \line 25) What\rquote s difference between }{\b Datagrid, Datalist and Repeater}{
? From performance point of view how do they rate? \line The DataGrid Web c
ontrol provides the greatest feature set of the three data Web controls, with its ability to allow the end-user to sort, page, and edit its data. The DataGrid is also the simplest data Web control to get started with, as using it requires nothing more tha
n
adding a DataGrid to the Web page and writing a few lines of code. The ease of use and impressive features comes at a cost, though, namely that of performance: the DataGrid is the least efficient of the three data Web controls, especially when placed wit
hin a Web form.\line
With its templates, the DataList provides more control over the look and feel of the displayed data than the DataGrid. Using templates, however, typically requires more development time than using the DataGrid's column types. The DataList al
so supports inline editing of data, but requires a bit more work to implement than the DataGrid. Unfortunately, providing paging and sorting support in the DataList is not a trivial exercise. Making up for these lacking built-in features, the DataList off
ers better performance over the DataGrid.\line
Finally, the Repeater control allows for complete and total control of the rendered HTML markup. With the Repeater, the only HTML emitted are the values of the databinding statements in the templates along with the HTML markup specified in the templates
\emdash no "extra" HTML is emitted, as with the DataGrid and DataList. By requiring the developer to specify the complete generated HTML markup, the Repeater often requires the longest development time. Furthermore, the Repea
ter does not offer built-in editing, sorting, or paging support. However, the Repeater does boast the best performance of the three data Web controls. Its performance is comparable to the DataList's, but noticeably better than the DataGrid's.
\par 26) What\rquote s the method to }{\b customize columns in DataGrid}{? \line
You can control the order, behavior, and rendering of individual columns by directly manipulating the grid's Columns collection. The standard column type -- BoundColumn -- renders the values in text labels. The g
rid also supports other column types that render differently. Any of the column types can be used together with the Columns collection of a DataGrid. \line
Note that you can use explicitly-declared columns together with auto-generated columns (AutoGenerateColum
ns=true). When used together, the explicitly-declared columns in the Columns collection are rendered first, and then the auto-generated columns are rendered. The auto-generated columns are not added to the Columns collection.\line Column Name Description
\line BoundColumn Lets you control the order and rendering of the columns.\line HyperLinkColumn Presents the bound data in HyperLink controls.\line ButtonColumn Bubbles a user command from within a row to an event handler on the grid.\line
TemplateColumn Lets you control which controls are rendered in the column.\line EditCommandColumn Displays Edit, Update, and Cancel links in response to changes in the DataGrid control's EditItemIndex property.
\par 27) How can }{\b we format data inside DataGrid}{? \line You can format items in the DataGrid Web server
control to customize their appearance. You can Set the color, font, borders, and spacing for the grid as a whole. Set the color, font, and alignment for each type of grid item (row) individually, such as item, alternating item, selected item, header, and
f
ooter. Changing these settings allows you to override the settings you make for the entire grid. Set the color, font, and alignment for individual columns. This is particularly useful for setting the appearance of a special-purpose column such as a button
column. \line To set the format for an individual item \line 1. In Design view, select the DataGrid control, then click the Property Builder link at the bottom of the Properties window. \line
2. In the DataGrid Properties dialog box, click the Format tab, and under Objects do one of the following: Select Header, Footer, or Pager. \line -or- Expand the Items node and select the type of item to format. \line
3. Choose font, color, and alignment options for that item, and then choose Apply. \line 28) How will decide the design consideration to take a Datagrid, datalist or repeater? \line \line 29) Difference between ASP and ASP.NET? \line
30) What are major events in }{\b GLOBAL.ASAX file}{? What order they are triggered? \line The global.asax file can be found in the root directory of an ASP.Net application. Here i
s the list of events you can call. By calling them you are actually overriding the event that is exposed by the HttpApplication base class. Application_Start: used to set up an application environment and only called when the application first starts. App
l
ication_Init: This method occurs after _start and is used for initializing code. Application_Disposed: This method is invoked before destroying an instance of an application. Application_Error: This event is used to handle all unhandled exceptions in the
a
pplication. Application_End: used to clean up variables and memory when an application ends. Application_BeginRequest: This event is used when a client makes a request to any page in the application. It can be useful for redirecting or validating a page r
e
quest. Application_EndRequest: After a request for a page has been made, this is the last event that is called. Application_PreRequestHandlerExecute: This event occurs just before ASP.Net begins executing a handler such as a page or a web service. At this

point, the session state is available. Application_PostRequestHandlerExecute: This event occurs when the ASP.Net handler finishes execution. Application_PreSendRequestHeaders: This event occurs just before ASP.Net sends HTTP Headers to the client. This ca
n
be useful if you want to modify a header Application_PreSendRequestContent: This event occurs just before ASP.Net sends content to the client. Application_AcquireRequestState: This event occurs when ASP.Net acquires the current state (eg: Session state)
a
ssociated with the current request. Application_ReleaseRequestState: This event occurs after ASP.NET finishes executing all request handlers and causes state modules to save the current state data. Application_AuthenticateRequest: This event occurs when t
h
e identity of the current user has been established as valid by the security module. Application_AuthorizeRequest: This event occurs when the user has been authorized to access the resources of the security module. Session_Start: this event is triggered w
hen any new user accesses the web site. Session_End: this event is triggered when a user's session times out or ends. Note this can be 20 mins (the default session timeout value) after the user actually leaves the site.}{\f1\fs20
\par }}

{\rtf1\ansi\ansicpg1252\uc1 \deff0\deflang1033\deflangfe1033{\fonttbl{\f0\froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f1\fswiss\fcharset0\fprq2{\*\panose 020b0604020202020204}Arial;}
{\f77\froman\fcharset238\fprq2 Times New Roman CE;}{\f78\froman\fcharset204\fprq2 Times New Roman Cyr;}{\f80\froman\fcharset161\fprq2 Times New Roman Greek;}{\f81\froman\fcharset162\fprq2 Times New Roman Tur;}
{\f82\froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\f83\froman\fcharset178\fprq2 Times New Roman (Arabic);}{\f84\froman\fcharset186\fprq2 Times New Roman Baltic;}{\f85\fswiss\fcharset238\fprq2 Arial CE;}{\f86\fswiss\fcharset204\fprq2 Arial Cyr;}
{\f88\fswiss\fcharset161\fprq2 Arial Greek;}{\f89\fswiss\fcharset162\fprq2 Arial Tur;}{\f90\fswiss\fcharset177\fprq2 Arial (Hebrew);}{\f91\fswiss\fcharset178\fprq2 Arial (Arabic);}{\f92\fswiss\fcharset186\fprq2 Arial Baltic;}}
{\colortbl;\red0\green0\blue0;\red0\green0\blue255;\red0\green255\blue255;\red0\green255\blue0;\red255\green0\blue255;\red255\green0\blue0;\red255\green255\blue0;\red255\green255\blue255;\red0\green0\blue128;\red0\green128\blue128;\red0\green128\blue0;
\red128\green0\blue128;\red128\green0\blue0;\red128\green128\blue0;\red128\green128\blue128;\red192\green192\blue192;}{\stylesheet{\ql \li0\ri0\widctlpar\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0
\fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \snext0 Normal;}{\*\cs10 \additive Default Paragraph Font;}{\s15\ql \li0\ri-1440\sb100\sa100\nowidctlpar\faauto\rin-1440\lin0\itap0 \fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033
\sbasedon0 \snext15 Body Text;}}{\info{\author Administrator}{\operator Administrator}{\creatim\yr2005\mo9\dy16\hr18\min46}{\revtim\yr2005\mo9\dy22\hr11\min37}{\version477}{\edmins93}{\nofpages35}{\nofwords13958}{\nofchars79565}{\*\company MCN Solutions}
{\nofcharsws97711}{\vern8247}}\margl1008\margr1152\margt1152\margb1008 \widowctrl\ftnbj\aenddoc\noxlattoyen\expshrtn\noultrlspc\dntblnsbdb\nospaceforul\hyphcaps0\horzdoc\dghspace120\dgvspace120\dghorigin1701\dgvorigin1984\dghshow0\dgvshow3
\jcompress\viewkind4\viewscale100\nolnhtadjtbl \fet0\sectd \linex0\sectdefaultcl {\*\pnseclvl1\pnucrm\pnstart1\pnindent720\pnhang{\pntxta .}}{\*\pnseclvl2\pnucltr\pnstart1\pnindent720\pnhang{\pntxta .}}{\*\pnseclvl3\pndec\pnstart1\pnindent720\pnhang
{\pntxta .}}{\*\pnseclvl4\pnlcltr\pnstart1\pnindent720\pnhang{\pntxta )}}{\*\pnseclvl5\pndec\pnstart1\pnindent720\pnhang{\pntxtb (}{\pntxta )}}{\*\pnseclvl6\pnlcltr\pnstart1\pnindent720\pnhang{\pntxtb (}{\pntxta )}}{\*\pnseclvl7
\pnlcrm\pnstart1\pnindent720\pnhang{\pntxtb (}{\pntxta )}}{\*\pnseclvl8\pnlcltr\pnstart1\pnindent720\pnhang{\pntxtb (}{\pntxta )}}{\*\pnseclvl9\pnlcrm\pnstart1\pnindent720\pnhang{\pntxtb (}{\pntxta )}}\pard\plain
\ql \li0\ri0\sb100\sa100\nowidctlpar\faauto\rin0\lin0\itap0 \fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\b Dot Net Q and A.:
\par }{1 Which two properties are on every validation control? \line \line 2 Which template must you provide, in order to display data in a Repeater control? \line \line 3 Which property on a Co
mbo Box do you set with a column name, prior to setting the DataSource, to display data in the combo box? \line \line 4 Which method do you use to redirect the user to another page without performing a round trip to the client? \line \line
5 Which method do you invoke on the DataAdapter control to load your generated dataset with data? \line \line 6 Which control would you use if you needed to make sure the values in two different controls matched? \line \line
7 Where would you use an iHTTPModule, and what are the limitations of any approach you might take in implementing one \line \line 8 Where on the Internet would you look for Web services? \line \line
9 Whats MSIL, and why should my developers need an appreciation of it if at all? \line \line 10 Whats an assembly ..? \line \line 11 What type of code (server or client) is found in a Code-Behind class? \line \line
12 What tags do you need to add within the asp:datagrid tags to bind columns manually? \line \line 13 What tags do you need to add within the asp:datagrid tags to bind columns manually. \line \line 14 What tag do you use to add a hyperlink column to the D
ataGrid? \line \line 15 What property must you set, and what method must you call in your code, in order to bind the data from some data source to the Repeater control? \line \line
16 What property do you have to set to tell the grid which page to go to when using \line \line 17 What method do you use to explicitly kill a user s session? \line \line 18 What is "}{\b Common Language Runtime}{" (CLR)? \line \line
CLR is .NET equivalent of Java Virtual Machine (JVM). It is the runtime that converts a MSIL code into the host machine language code, which is then executed appropriately.\line \line
The CLR is the execution engine for .NET Framework applications. It provides a number of services, including: \line \line \'b7 Code management (loading and execution) \line \'b7 Application memory isolation \line \'b7 Verification of type safety \line
\'b7 Conversion of IL to native code. \line \'b7 Access to metadata (enhanced type information) \line \'b7 Managing memory for managed objects \line \'b7 Enforcement of code access security \line \'b7
Exception handling, including cross-language exceptions \line \'b7 Interoperation between managed code, COM objects, and pre-existing DLL's (unmanaged code and data) \line \'b7 Automation of object layout \line \'b7
Support for developer services (profiling, debugging, and so on).
\par 19 What is }{\b Web.config}{?\line In classic ASP all Web site related information was stored in the metadata of IIS.
This had the disadvantage that remote Web developers couldn't easily make Web-site configuration changes. For example, if you want to add a custom 404 error page, a setting needs to be made through the IIS admin tool, and you're Web host will likely charg
e you a flat fee to do this for you. \line \line
With ASP.NET, however, these settings are moved into an XML-formatted text file (Web.config) that resides in the Web site's root directory. Through Web.config you can specify settings like custom 404 error pages, authe
ntication and authorization settings for the Web sitempilation options for the ASP.NET Web pages, if tracing should be enabled, etc. \line \line
The Web.config file is an XML-formatted file. At the root level is the <configuration> tag. Inside this tag you can add a
number of other tags, the most common and useful one being the system. web tag, where you will specify most of the Web site configuration parameters. However, to specify application-wide settings you use the <appSettings> tag. \line \line
For example, if we wanted to add a database connection string parameter we could have a Web.config file like so:\line \line <configuration>\line \line <!-- application specific settings -->\line \line
<appSettings><add key="connString" value="connection string" /></appSettings> \line \line <system.web>\line ...\line </system.web>\line \line </configuration> \line \line
Now, in any of your ASP.NET Web pages in this Web site you can read the value of the connString parameter like so: \line }{\b ConfigurationSettings.AppSettings("connString")}{ \line \line
To avoid this complication you can "group" your application's settings into a unique tag in the Web.config file. That is, you can create a tag named: <MyAppSettings> in Web.config and then use the as we did earlier to add application-wide settings. \line
\line To add a custom tag to Web.config you need to first explicitly specify the new tag name in Web.config via the <configSections> tag, like so: \line \line <configuration>\line \line <configSections>\line \line <section name="MyAppSettings" \line
\line type="System.Configuration.NameValueFileSectionHandler, \line \line System, Version=1.0.3300.0, Culture=neutral, \line \line PublicKeyToken=b77a5c561934e089" />\line \line </configSections> \line ...\line </configuration> \line \line
This <section ... /> tag indicates that we are going to be adding a custom tag named MyAppSettings. Now we can add a <MyAppSettings> tag to our Web.config file and add <add ... /> tags to add application-wide parameters, like so: \line \line
<configuration>\line \line <configSections>\line \line <section name="MyAppSettings" \line \line type="System.Configuration.NameValueFileSectionHandler, \line \line System, Version=1.0.3300.0, Culture=neutral, \line \line
PublicKeyToken=b77a5c561934e089" />\line \line </configSections> \line \line <MyAppSettings>\line \line <add key="connString" value="connection string" />\line \line </MyAppSettings>\line ...\line </configuration>\line \line
To read this custom value from an ASP.NET Web page we use the following syntax: \line \line ConfigurationSettings.GetConfig("MyAppSettings")("connString") \line \line 20 What is the transport protocol you use to call a Web service SOAP \line \line
21 What is the standard you use to wrap up a call to a Web service \line \line 22 What is the difference between }{\b VB and VB.NET}{?\line \line Now VB.NET is object-oriented language. The following are some of the differences: \line \line }{\b
Data Type Changes
\par }{The .NET platform provides Common Type System to all the supported languages. This means that all the languages must support the same data types as enforced by common language runtime. This eliminates data t
ype incompatibilities between various languages. For example on the 32-bit Windows platform, the integer data type takes 4 bytes in languages like C++ whereas in VB it takes 2 bytes. Following are the main changes related to data types in VB.NET:\line
\line \bullet Under .NET the integer data type in VB.NET is also 4 bytes in size.\line \line \bullet VB.NET has no currency data type. Instead it provides decimal as a replacement.\line \line \bullet
VB.NET introduces a new data type called Char. The char data type takes 2 bytes and can store Unicode characters.\line \line \bullet
VB.NET do not have Variant data type. To achieve a result similar to variant type you can use Object data type. (Since every thing in .NET \endash including primitive data types \endash
is an object, a variable of object type can point to any data type).\line \line \bullet In VB.NET there is no concept of fixed length strings.\line \line \bullet
In VB6 we used the Type keyword to declare our user-defined structures. VB.NET introduces the structure keyword for the same purpose. \line \line Declaring Variables\line \line Consider this simple example in VB6:\line \line Dim x,y as integer \line
\line In this example VB6 will consider x as variant and y as integer, which is somewhat odd behavior. VB.NET corrects this problem, creating both x and y as integers. Furthermore, VB.NET allows you to assign initial values to the variables in t
he declaration statement itself:\line Dim str1 as string = \'93Hello\'94 \line \line
VB.NET also introduces Read-Only variables. Unlike constants Read-Only variables can be declared without initialization but once you assign a value to it, it cannot be changes. \line \line Initialization here\line \line Dim readonly x as integer \line
\line In later code\line \line X=100 \line \line Now x can\rquote t be changed\line \line X=200 *********** Error ********** \line \line Property Syntax\line \line
In VB.NET, we anymore don't have separate declarations for Get and Set/Let. Now, everything is done in a single property declaration. This can be better explained by the following example.
\par Public [ReadOnly | WriteOnly] Property PropertyName as Datatype\line Get\line Return m_var\line End Get\line Set\line M_var = value\line End Set\line End Property \line \line Example:\line Private _message as String\line Public Property Message As String
\line Get\line Return _message\line End Get \line Set\line _message = Value\line End Set\line End Property \line \line
By Val is the default - This is a crucial difference between VB 6.0 and VB.NET, where the default in VB 6.0 was by reference. But objects are still passed by reference. \line \line }{\b Invoking Subroutines}{\line \line
In previous versions of VB, only functions required the use of parentheses around the parameter list. But in VB.NET all function or subroutine calls require parentheses around the parameter list. This also applies, even though the
parameter list is empty. \line \line User-Defined Types - VB.NET does away with the keyword Type and replaces it with the keyword Structure \line \line Public Structure Student\line \line Dim strName as String\line \line Dim strAge as Short\line \line
End Structure \line \line Procedures and Functions\line \line In VB6 all t
he procedure parameters are passed by reference (ByRef) by default. In VB.NET they are passed by value (ByVal) by default. Parantheses are required for calling procedures and functions whether they accept any parameters or not. \line \line
In VB6 functions returned values using syntax like: FuntionName = return_value. In VB.NET you can use the Return keyword (Return return_value) to return values or you can continue to use the older syntax, which is still valid. \line }{\b Scooping:\line }{
VB.NET now supports block-level scooping of variables. If your programs declare all of the variables at the beginning of the function or subroutine, this will not be a problem. However, the following VB 6.0 will cause an issue while upgrading to VB .NET
\line \line Do While objRs.Eof\line \line Dim J as Integer\line \line J=0\line \line If objRs("flag")="Y" then\line \line J=1\line \line End If\line \line objRs.MoveNext\line \line Wend\line \line If J Then\line \line Msgbox "Flag is Y"\line \line End If
\line \line In the above example the variable J will become out of scope just after the loop, since J was declared inside the While loop. \line }{\b Exception Handling:-\line }{The most
wanted feature in earlier versions of VB was its error handling mechanism. The older versions relied on error handlers such as "On Error GoTo and On Error Resume Next. VB.NET provides us with a more stuructured approach. The new block structure allows us
to track the exact error at the right time. The new error handling mechanism is refered to as Try...Throw...Catch...Finally. The following example will explain this new feature. \line \line Sub myOpenFile()\line \line Try\line \line
Open "myFile" For Output As #1\line \line Write #1, myOutput\line \line Catch\line \line Kill "myFile"\line \line Finally\line \line Close #1\line \line End try\line \line End Sub \line \line
The keyword SET is gone - Since everything in VB.NET is an object. So the keyword SET is not at all used to differentiate between a simple variable assignment and an object assignment. So, if you have the following statement in VB 6.0 \line \line
Set ObjConn = Nothing \line \line Should be replaced as\line \line ObjConn = Nothing. \line \line Constructor and Destructor\line \line The constructor procedure is one of the many new object-oriented features of VB.NET. The constructor in VB.NET replaces

the Class_Initialize in VB 6.0. All occurance of Class_Initialize in previous versions of VB should now be placed in a class constructor. In VB.NET, a constructor is added to a class by adding a procedure called New. We can also create a class destructor,
which is equivalent to Class_Terminate event in VB 6.0, by adding a sub-procedure called Finalize to our class. \line }{\b Usage of Return-}{\line
In VB.NET, we can use the keyword return to return a value from any function. In previous versions, we used to assign the value back with the help of the function name itself. The following example explains this: \line \line
Public Function Sum (intNum1 as Integer, intNum2 as Integer) as Integer\line \line Dim intSum as Integer\line \line intSum = intNum1 + intNum2\line \line Return intSum\line \line End Function \line \line Static Methods\line \line
VB.NET now allows you to create static methods in your classes. Static methods are methods that can be called without requiring the developer to create instance of the class. For example, if you had a class named Foo with the non-static method NonStatic
() and the static method Static(), you could call the Static() method like so:\line \line Foo.Static() \line \line However, non-static methods require than an instance of the class be created, like so:\line \line Create an instance of the Foo class\line
\line Dim objFoo as New Foo()\line \line Execute the NonStatic() method\line \line ObjFoo.NonStatic() \line \line To create a static method in a VB.NET, simply prefix the method definition with the keyword Shared. \line \line
23 What is the difference between Servers? Transfer and Response. Redirect? Why would I choose one over the other? \line \line 24 What is the difference between ASP and ASP.NET?\line \line }{\b ASP & ASP.NET }{\line \line
ASP is interpreted. ASP.NET Compiled event base programming. \line \line Control events for text button can be handled at client javascript only. Since we have server controls events can handle at server side. \line \line }{\b More error handling. \line }
{\line \bullet ASP .NET has better language support, a large set of new controls and XML based components, and better user authentication.\line \line \bullet ASP .NET provides increased performance by running compiled code.\line \line \bullet
ASP .NET code is not fully backward compatible with ASP.\line \line \bullet ASP .NET also contains a new set of object oriented input controls, like programmable list boxes, validation controls. \line \line
A new data grid control supports sorting, data paging, and everything you expect from a dataset control. \line \line
The first request for an ASP.NET page on the server will compile the ASP .NET code and keep a cached copy in memory. The result of this is greatly increased performance. \line \line ASP .NET is not fully compatible with earlier versions of ASP, so mo
st of the old ASP code will need some changes to run under ASP .NET. To overcome this problem, ASP .NET uses a new file extension ".aspx". This will make ASP .NET applications able to run side by side with standard ASP applications on the same server.
\line \line 25 What is the difference }{\b between ADO and ADO.NET}{?\line
ADO uses Recordsets and cursors to access and modify data. Because of its inherent design, Recordset can impact performance on the server side by tying up valuable resources. In addition, COM marshalling - a
n expensive data conversion process - is needed to transmit a Recordset. \line \line ADO.NET addresses three important needs that ADO doesn't address:\line \line
1. Providing a comprehensive disconnected data-access model, which is crucial to the Web environment\line \line 2. Providing tight integration with XML, and\line \line
3. Providing seamless integration with the .NET Framework (e.g., compatibility with the base class library's type system). \line \line From an ADO.NET implementation perspective, the Recordset object in ADO is eliminated in the .NET
architecture. In its place, ADO.NET has several dedicated objects led by the DataSet object and including the DataAdapter, and DataReader objects to perform specific tasks. In addition, ADO.NET DataSets operate in disconnected state whereas the ADO Recor
dSet objects operated in a fully connected state. \line \line In ADO, the in-memory representation of data is the recordset. In ADO.NET, it is the dataset. \line \line
A recordset looks like a single table. If a recordset is to contain data from multiple database tables, it mu
st use a JOIN query, which assembles the data from the various database tables into a single result table. In contrast, a dataset is a collection of one or more tables. The tables within a dataset are called data tables; specifically, they are DataTable o
b
jects. If a dataset contains data from multiple database tables, it will typically contain multiple DataTable objects. That is, each DataTable object typically corresponds to a single database table or view. In this way, a dataset can mimic the structure
of the underlying database. \line \line
In ADO you scan sequentially through the rows of the recordset using the ADO MoveNext method. In ADO.NET, rows are represented as collections, so you can loop through a table as you would through any collection, or access parti
cular rows via ordinal or primary key index. \line \line
A cursor is a database element that controls record navigation, the ability to update data, and the visibility of changes made to the database by other users. ADO.NET does not have an inherent cursor object, b
ut instead includes data classes that provide the functionality of a traditional cursor. For example, the functionality of a forward-only, read-only cursor is available in the ADO.NET DataReader object. \line \line
There is one significant difference between disconn
ected processing in ADO and ADO.NET. In ADO you communicate with the database by making calls to an OLE DB provider. In ADO.NET you communicate with the database through a data adapter (an OleDbDataAdapter, SqlDataAdapter, OdbcDataAdapter, or OracleDataAd
apter object), which makes calls to an OLE DB provider or the APIs provided by the underlying data source. \line \line 26 What is the difference between }{\b a namespace and assembly name}{?\line
A namespace is a logical naming scheme for types in which a simple type name, such
as MyType, is preceded with a dot-separated hierarchical name. Such a naming scheme is completely under control of the developer. For example, types MyCompany.FileAccess.A and MyCompany.FileAccess.B might be logically expected to have functionally related

to file access. The .NET Framework uses a hierarchical naming scheme for grouping types into logical categories of related functionality, such as the ASP.NET application framework, or remoting functionality. Design tools can make use of namespaces to make
it easier for developers to browse and reference types in their code. \line \line
The concept of a namespace is not related to that of an assembly. A single assembly may contain types whose hierarchical names have different namespace roots, and a logical namespace r
oot may span multiple assemblies. In the .NET Framework, a namespace is a logical design-time naming convenience, whereas an assembly establishes the name scope for types at run time. \line \line 27. What is the difference between "using }{\b System. Data
}{;" and directly adding the reference from "Add References Dialog Box"?\line \line
When u compile a program using command line, u add the references using /r switch. When you compile a program using Visual Studio, it adds those references to our assembly, which are added using "Add
Reference" dialog box. While "using" statement facilitates us to use classes without using their fully qualified names. \line \line
For example: if u have added a reference to "System.Data.SqlClient" using "Add Reference" dialog box then u can use SqlConnection class like this: System.Data.SqlClient.SqlConnection \line
But if u add a "using System.Data.SqlClient" statement at the start of ur code then u can directly use SqlConnection class. \line On the other hand if u add a reference using "using System.Data.SqlClient" statem
ent, but don't add it using "Add Reference" dialog box, Visual Studio will give error message while we compile the program. \line 28 What }{\b is Reflection}{?\line
It extends the benefits of metadata by allowing developers to inspect and use it at runtime. For example, dynamically determine all the classes contained in a given assembly and invoke their methods. \line \line
Reflection provides objects that encapsulate assemblies, modules, and types. You can use reflection to dynamically create an instance of a type, bind the type to
an existing object, or get the type from an existing object. You can then invoke the type's methods or access its fields and properties.\line Namespace: System.Reflection \line \line 29 What is }{\b managed code and managed data}{? \line \line
Managed code is code that is written to targ
et the services of the Common Language Runtime. In order to target these services, the code must provide a minimum level of information (metadata) to the runtime. All C#, Visual Basic .NET, and JScript .NET code is managed by default. Visual Studio .NET C
++ code is not managed by default, but the compiler can produce managed code by specifying a command-line switch (/CLR). \line \line
Closely related to managed code is managed data--data that is allocated and de- allocated by the Common Language Runtime's garbage col
lector. C#, Visual Basic, and JScript .NET data is managed by default. C# data can, however, be marked as unmanaged through the use of special keywords. Visual Studio .NET C++ data is unmanaged by default (even when using the /CLR switch), but when using
M
anaged Extensions for C++, a class can be marked as managed using the __gc keyword. As the name suggests, this means that the memory for instances of the class is managed by the garbage collector. In addition, the class becomes a full participating member

of the .NET Framework community, with the benefits and restrictions that it brings. An example of a benefit is proper interoperability with classes written in other languages (for example, a managed C++ class can inherit from a Visual Basic class). An exa
mple of a restriction is that a managed class can only inherit from one base class. \line \line 30 What is }{\b Machine.config}{?\line
Machine configuration file: The machine.config file contains settings that apply to the entire computer. This file is located in the %runtime install path%Config directory. There is only one machine.config file on a computer. \line \line
The Machine.Config file found in the "CONFIG" subfolder of your .NET Framework install directory (c:WINNTMicrosoft.NETFramework\{Version Number\}CONFIG on Windows 2000 installations). \line \line
The machine.config, which can be found in the directory $WINDIR$Microsoft.NETFrameworkv1.0.3705CONFIG, is an XML-formatted configuration file that specifies configuration options for the machine. This file contains, among many other XML element
s, a browserCaps element. Inside this element are a number of other elements that specify parse rules for the various User-Agents, and what properties each of these parsings supports. \line \line
For example, to determine what platform is used, a filter element is used that specifies how to set the platform property based on what platform name is found in the User-Agent string. Specifically, the machine.config file contains: \line \line <filter>
\line <case match="Windows 95|Win95">\line platform=Win95\line </case>\line <case match="Windows 98|Win98">\line platform=Win98\line </case> \line <case match="Windows NT|WinNT">\line platform=WinNT\line </case>\line ...\line </filter> \line \line
That is, if in the User-Agent string the string "Windows 95" or "Win95" is found, the platform property is set to Win95. There are a number of filter elemen
ts in the browserCaps element in the machine.config file that define the various properties for various User-Agent strings. \line
Hence, when using the Request.Browser property to determine a user's browser features, the user's agent string is matched up to par
ticular properties in the machine.config file. The ability for being able to detect a user's browser's capabilities, then, is based upon the honesty in the browser's sent User-Agent string. For example, Opera can be easily configured to send a User-Agent
string that makes it appear as if it's IE 5.5. In this case from the Web server's perspective (and, hence, from your ASP.NET Web page's perspective), the user is visiting using IE 5.5, even though, in actuality, he is using Opera. \line \line 31 What is }
{\b GAC}{?\line The global assembly cache stores assemblies specifically designated to be shared by several applications on the computer. \line \line
You should share assemblies by installing them into the global assembly cache only when you need to. Assemblies deployed in the global assem
bly cache must have a strong name. When an assembly is added to the global assembly cache, integrity checks are performed on all files that make up the assembly. The cache performs these integrity checks to ensure that an assembly has not been tampered wi
th, for example, when a file has changed but the manifest does not reflect the change. \line
Use a developer tool called the Global Assembly Cache tool (Gacutil.exe), provided by the .NET Framework SDK or Use Windows Explorer to drag assemblies into the cache. \line \line To install a strong-named assembly into the global assembly cache \line
At the command prompt, type the following command: \line gacutil \endash I <assembly name> \line \line In this command, assembly name is the name of the assembly to install in the global assembly cache. \line 32 What }{\b is Delegation}{?\line
A delegate acts like a strongly type function pointer. Delegates can invoke the methods that they reference without making explicit calls to those methods. \line Delegate is an entity that is entrusted with the task of representation, assign or
passing on information. In code sense, it means a Delegate is entrusted with a Method to report information back to it when a certain task (which the Method expects) is accomplished outside the Method's class. \line 33. What is an }{\b
Intermediate language}{?\line Assemb
lies are made up of IL code modules and the metadata that describes them. Although programs may be compiled via an IDE or the command line, in fact, they are simply translated into IL, not machine code. The actual machine code is not generated until the f
u
nction that requires it is called. This is the just-in-time, or JIT, compilation feature of .NET. JIT compilation happens at runtime for a variety of reasons, one of the most ambitious being Microsoft's desire for cross-platform .NET adoption. If a CLR is

built for another operating system (UNIX or Mac), the same assemblies will run in addition to the Microsoft platforms. The hope is that .NET assemblies are write-once-run-anywhere applications. This is a .NET feature that works behind-the-scenes, ensuring
that developers are not limited to writing applications for one single line of products. No one has demonstrated whether or not this promise will ever truly materialize. \line }{\b CTS/CLS :-\line }{
The MSIL Instruction Set Specification is included with the .NET SDK, alon
g with the IL Assembly Language Programmers Reference. If a developer wants to write custom .NET programming languages, these are the necessary specifications and syntax. The CTS and CLS define the types and syntaxes that every .NET language needs to embr
ace. An application may not expose these features, but it must consider them when communicating through IL.
\par 34 What is an }{\b assembly}{? \line An assembly is the primary building block of a .NET Framework application. It is a collection of functionality that is built
, versioned, and deployed as a single implementation unit (as one or more files). All managed types and resources are marked either as accessible only within their implementation unit, or as accessible by code outside that unit. \line \line
. NET Assembly contains all the metadata about the modules, types, and other elements it contains in the form of a \'93manifest.\'94
The CLR loves assemblies because differing programming languages are just perfect for creating certain kinds of applications. For example, COBOL stands for Common Business-Oriented Language because it\rquote
s tailor-made for creating business apps. However, it\rquote s not much good for creating drafting programs. Regardless of what language you used to create your modules, they can all work together within one Portable Executable Assembly. \line \line There
\rquote s a hierarchy to the structure of .NET code. That hierarchy is \'93Assembly -> Module -> Type -> Method." \line \line Assemblies can be static or dynamic. Static assemblies can include .NET Framework types (interfaces and classes), as well
as resources for the assembly (bitmaps, JPEG files, resource files, and so on). Static assemblies are stored on disk in portable executable (PE) files. You can also use the .NET Framework to create dynamic assemblies, which are run directly from memory a
nd are not saved to disk before execution. You can save dynamic assemblies to disk after they have executed. \line \line 35 What is a }{\b Web Service}{?\line
A web service is a software component that exposes itself through the open communication channels of the Internet. Appli
cations running on remote machines, on potentially different platforms, can access these components in a language and platform-independent manner. \line
A Web Service is a group of functions, packaged together for use in a common framework throughout a network.
\par 36 What is a }{\b Strong Name}{?\line A strong name consists of the assembly's identity \emdash its simple text name, version number, and culture information (if provided) \emdash
plus a public key and a digital signature. It is generated from an assembly file (the file that con
tains the assembly manifest, which in turn contains the names and hashes of all the files that make up the assembly), using the corresponding private key. Assemblies with the same strong name are expected to be identical. \line \line
Strong names guarantee name uniqueness by relying on unique key pairs. No one can generate the same assembly name that you can, because an assembly generated with one private key has a different name than an assembly generated with another private key.
\line \line When you reference a strong-named
assembly, you expect to get certain benefits, such as versioning and naming protection. If the strong-named assembly then references an assembly with a simple name, which does not have these benefits, you lose the benefits you would derive from using a s
trong-named assembly and revert to DLL conflicts. Therefore, strong-named assemblies can only reference other strong-named assemblies. \line There are two ways to sign an assembly with a strong name: \line \line
1. Using the Assembly Linker (Al.exe) provided by the .NET Framework SDK. \line \line
2. Using assembly attributes to insert the strong name information in your code. You can use either the AssemblyKeyFileAttribute or the AssemblyKeyNameAttribute, depending on where the key file to be used is located. \line \line To create and sign an
assembly with a strong name using the Assembly Linker, at the command prompt, type the following command: \line \line al /out:<assembly name> <module name> /keyfile:<file name> \line \line
In this command, assembly name is the name of the assembly to sign with a strong name, module name is the name of the code module used to create the assembly, and file name is the name of the container or file that contains the key pair. \line \line
The following example signs the assembly MyAssembly.dll with a strong name using the key file sgKey.snk.\line \line al /out:MyAssembly.dll MyModule.netmodule /keyfile:sgKey.snk \line \line To sign an assembly with a strong name using attributes \line
\line In a code module, add the AssemblyKeyFileAttribute or the AssemblyKeyNameAttribute, specifying the name of the file or container that contains the key pair to use when signing the assembly with a strong name. \line \line
The following code example uses the AssemblyKeyFileAttribute with a key file called sgKey.snk.\line \line [Visual Basic]\line <Assembly:AssemblyKeyFileAttribute("sgKey.snk")>\line \line [C#]\line [assembly:AssemblyKeyFileAttribute(@"....sgKey.snk")]
\line \line 37 What is }{\b a Metadata}{?\line Metadata is information about a PE. In COM, metadata is communicated through non-standardized type libraries. In .NET, this data is contained in the header portion of a COFF-compliant PE
and follows certain guidelines; it contains information such as the assembly\rquote s name, version, language (spoken, not computer\emdash a.k.a., \'93culture\'94
), what external types are referenced, what internal types are exposed, methods, properties, classes, and much more. The CLR uses metadata for a number of specific purposes. Security is managed through a public key in the PE\rquote
s header. Information about classes, modules, and so forth allows the CLR to know in advance what structures are necessary. The class loader comp
onent of the CLR uses metadata to locate specific classes within assemblies, either locally or across networks. Just-in-time (JIT) compilers use the metadata to turn IL into executable code. Other programs take advantage of metadata as well. A common exam
p
le is placing a Microsoft Word document on a Windows 2000 desktop. If the document file has completed comments, author, title, or other Properties metadata, the text is displayed as a tool tip when a user hovers the mouse over the document on the desktop.
You can use the Ildasm.exe utility to view the metadata in a PE. Literally, this tool is an IL dissembler. \line \line 38 What is a }{\b Manifest}{?\line
An assembly manifest contains all the metadata needed to specify the assembly's version requirements and security identity,
and all metadata needed to define the scope of the assembly and resolve references to resources and classes. The assembly manifest can be stored in either a PE (Portable Executable) file (an .exe or .dll) with Microsoft intermediate language (MSIL) code o
r in a standalone PE (Portable Executable) file that contains only assembly manifest information. \line The following table shows the information contained in the assembly manifest. The first four items \emdash
the assembly name, version number, culture, and strong name information \emdash make up the assembly's identity. \line \line Assembly name: A text string specifying the assembly's name. \line \line
Version number: A major and minor version number, and a revision and build number. The common language runtime uses these numbers to enforce version policy. \line \line
Culture: Information on the culture or language the assembly supports. This information should be used only to designate an assembly as a satellite assembly containing culture- or language-specific information. (An assembly with culture i
nformation is automatically assumed to be a satellite assembly.) \line Strong name information: The public key from the publisher if the assembly has been given a strong name. \line
List of all files in the assembly: A hash of each file contained in the assembly and a file name. Note that all files that make up the assembly must be in the same directory as the file containing the assembly manifest. \line
Type reference information: Information used by the runtime to map a type reference to the file that contains its declaration and implementation. This is used for types that are exported from the assembly. \line
Information on referenced assemblies: A list of other assemblies that are statically referenced by the assembly. Each reference includes the dependent assembly's name,
assembly metadata (version, culture, operating system, and so on), and public key, if the assembly is strong named. \line \line 39 What is }{\b .NET / .NET Framework}{?\line It is a Framework in which Windows applications may be developed and run.\line
The Microsoft .NET Framework i
s a platform for building, deploying, and running Web Services and applications. It provides a highly productive, standards-based, multi-language environment for integrating existing investments with next-generation applications and services as well as th
e
agility to solve the challenges of deployment and operation of Internet-scale applications. The .NET Framework consists of three main parts: the common language runtime, a hierarchical set of unified class libraries, and a componentized version of Active
Server Pages called ASP.NET. \line \line
The .NET Framework provides a new programming model and rich set of classes designed to simplify application development for Windows, the Web, and mobile devices. It provides full support for XML Web services, contains robust
security features, and delivers new levels of programming power. The .NET Framework is used by all Microsoft languages including Visual C#, Visual J#, and Visual C++. \line \line 40 What is "Microsoft Intermediate Language" (}{\b MSIL}{)?\line
A .NET programming language (C#,
VB.NET, J# etc.) does not compile into executable code; instead it compiles into an intermediate code called Microsoft Intermediate Language (MSIL). As a programmer one need not worry about the syntax of MSIL - since our source code in automatically conve
rted to MSIL. The MSIL code is then send to the CLR (Common Language Runtime) that converts the code to machine language, which is, then run on the host machine. MSIL is similar to Java Byte code. \line \line
MSIL is the CPU-independent instruction set into which .NET Framework programs are compiled. It contains instructions for loading, storing, initializing, and calling methods on objects. \line
Combined with metadata and the common type system, MSIL allows for true cross- language integration Prior to execution, MSIL is converted to machine code. It is not interpreted. \line \line 41 What is "}{\b Common Type System}{" (CTS)?\line
CTS defines all of the basic types that can be used in the .NET Framework and the operations performed on those type. \line All this time we have been talking about lang
uage interoperability, and .NET Class Framework. None of this is possible without all the language sharing the same data types. What this means is that an int should mean the same in VB, VC++, C# and all other .NET compliant languages. This is achieved th
rough introduction of Common Type System (CTS). \line 42 What is "}{\b Common Language Specification}{" (CLS)?\line
CLS is the collection of the rules and constraints that every language (that seeks to achieve .NET compatibility) must follow. It is a subsection of CTS and it specifies how it shares and extends one another libraries. \line \line 43 What is "}{\b
Common Language Runtime}{" (CLR)?\line CLR is .NET equivalent of Java Virtual Machine (JVM). It is the runtime that converts a MSIL code into the host machine language code, which is then executed appropriately. \line \line
The CLR is the execution engine for .NET Framework applications. It provides a number of services, including: \line \bullet Code management (loading and execution) \line \bullet Application memory isolation \line \bullet Verification of type safety
\line \bullet Conversion of IL to native code. \line \bullet Access to metadata (enhanced type information) \line \bullet Managing memory for managed objects \line \bullet Enforcement of code access security \line \bullet
Exception handling, including cross-language exceptions \line \bullet Interoperation between managed code, COM objects, and pre-existing DLL's (unmanaged code and data) \line \bullet Automation of object layout \line \bullet
Support for developer services (profiling, debugging, and so on). \line \line 44 What does WSDL stand for? \line 45 What does the "EnableViewState" property do? Why would I want it on or off? \line 46 What base class do all Web Forms inherit from?

\par 47 What are the }{\b Types of Assemblies}{?\line Assemblies are of two types\line \line 1. Private Assemblies\line 2. Shared Assemblies \line Private Assemblies: The assembly is intended only for one application. The files of
that assembly must be placed in the same folder as the application or in a sub folder. No other application will be able to make a call to this assembly. The advantage of having a private assembly is that, it makes naming the assembly very easy, since the
developer need not worry about name clashes with other assemblies. As long as the assembly has a unique name within the concerned application, there won't be any problems. \line \line
Shared Assemblies: If the assembly is to be made into a Shared Assembly, then the
naming conventions are very strict since it has to be unique across the entire system. The naming conventions should also take care of newer versions of the component being shipped. These are accomplished by giving the assembly a Shared Name. Then the ass
embly is placed in the global assembly cache, which is a folder in the file system reserved for shared assemblies. \line \line 48. What are the disadvantages of viewstate/what are the benefits \line
49. What are HTML controls, Web controls, and server controls. \line 50 .What are good ADO.NET object(s) to replace the ADO Record set object.
\par 51. What are }{\b Attributes}{?\line Attributes are declarative tags in code that insert additional metadata into an assembly. There exist two types of attributes in the .NET Framework: Predefined attri
butes such as Assembly Version, which already exist and are accessed through the Runtime Classes; and custom attributes, which you write yourself by extending the System Attribute class. \line \line
52. What are ASP.NET Web Forms? How is this technology different than what is available though ASP (1.0-3.0)? \line 53}{\b . webFarm Vs web Gardens}{\line
A web farm is a multi-server scenario. So we may have a server in each state of US. If the load on one server is in excess then the other servers step in to bear the brunt. How they bear it is based on various models.\line \line
1. RoundRobin. (All servers share load equally)\line 2. NLB (economical)\line 3. HLB (expensive but can scale up to 8192 servers)\line 4. Hybrid (of 2 and 3).\line 5. CLB (Component load balancer). \line \line A web garden is a multi-processor setup. i
.e., a single server (not like the multi server above). \line How to implement webfarms in .Net:\line Go to web.config and \line Here for mode = you have 4 options.\line \line a) Say mode=inproc (non web farm but fast when you have very few customers).
\line b) Say mode=State Server (for web farm)\line c) Say mode=SqlServer (for web farm) \line \line whether to use option b or c depends on situation. StateServer is faster but SqlServer is more reliable and used for mission critical applications. \line
How to use webgardens in .Net:\line Go to web.config and webGarden="false"...>\line Change the false to true. You have one more attribute that is related to webgarden in the same tag called cpuMask. \line \line 54. Using }{\b COM Component in .Net}{.
\line As most of you know that .Net does not encourage the development of COM components and p
rovides a different solution to making reusable components through Assemblies. But, there is a lot of COM components present which our .Net application might need to use. Fortunately, .Net provides an extremely simple approach to achieve this.\line \line
This is achieved by using \lquote Wrapper Classes\rquote and \lquote Proxy Components\rquote . . Net wraps the COM component into .Net assembly technically called \lquote Runtime Callable Wrapper\rquote
or RCW. Then u can call and use your COM component just as a .Net (or C#, if u are using C#) Assembly.
\par }\pard \ql \li0\ri-1440\sb100\sa100\nowidctlpar\faauto\rin-1440\lin0\itap0 {55. Using }{\b ActiveX Control in .Net.}{\line
ActiveX control is a special type of COM component that supports a User Interface. Using ActiveX Control in your .Net Project is even easier than using COM component. They are bundled usually in .ocx files. Again a proxy
assembly is made by .Net utility AxImp.exe (which we will see shortly) which your application (or client) uses as if it is a .Net control or assembly. \line \bullet
Making Proxy Assembly For ActiveX Control: First, a proxy assembly is made using AxImp.exe (acronym for ActiveX Import) by writing following command on Command Prompt:\line \line C:>AxImp C: MyProjectsMyControl.ocx\line \line
This command will make two dlls, e.g., in case of above command\line \line MyControl.dll\line AxMyControl.dll\line \line The first file MyControl.dll is a .Net assembly proxy, which allows you to reference the ActiveX as if it were non-graphical object.
\line The second file AxMyControl.dll is the Windows Control, which allows u to use the graphical aspects of activex control and use it in the Windows Form Project. \line \line \bullet Adding Reference
of ActiveX Proxy Assembly in your Project Settings: To add a reference of ActiveX Proxy Assembly in our Project, do this:\line \line o Select Project\'e0Add Reference\'85 (Select Add Reference from Project Menu). \line
o This will show you a dialog box, select .Net tab from the top of window. \line o Click Browse\'85 button on the top right of window. \line o Select the dll file for your ActiveX Proxy Assembly (which is MyControl.dll) and click OK\line
o Your selected component is now shown in the \lquote Selected Component\rquote List Box. Click OK again
\par }{\b Some More On Using COM or ActiveX in .Net:- \line }{\bullet
.Net only provides wrapper class or proxy assembly (Runtime Callable Wrapper or RCW) for COM or activeX control. In the background, it is actually delegating the tasks to the original COM, so it does not convert your COM/activeX but just imports them.
\line \line \bullet A good thing about .Net is that when it imports a component, it also imports the components that are publically referenced by that component. So, if your component, say MyDataAcsess.dll references ADODB.dll the
n .Net will automatically import that COM component too!\line \line \bullet
The Visual Studio.NET does surprise you in a great deal when u see that it is applying its intellisense (showing methods, classes, interfaces, properties when placing dot) even on your imported COM components!!!! Isn\rquote t it a magic or what?\line
\line \bullet When accessing thru RCW, .Net client has no knowledge that it is using COM component, it is presented just as another C# assembly.\line \line \bullet U can also import COM component thru command prompt (for reference see Profe
ssional C# by Wrox)\line \line \bullet U can also use your .Net components in COM, i.e., export your .net components (for reference see Professional C# by Wrox) \line
56. True or False: To test a Web service you must create a windows application or Web application to consume this service? \line 57 .True or False: A Web service can only be written in .NET \line 58. the Pager object? \line
59. Should validation (did the user enter a real date) occur server-side or client-side? Why?
\par 60. Observations between }{\b VB.NET and VC#.NET}{ \line Choosing a progra
mming language depends on your language experience and the scope of the application you are building. While small applications are often created using only one language, it is not uncommon to develop large applications using multiple languages. \line
\line For examp
le, if you are extending an application with existing XML Web services, you might use a scripting language with little or no programming effort. For client-server applications, you would probably choose the single language you are most comfortable with fo
r
the entire application. For new enterprise applications, where large teams of developers create components and services for deployment across multiple remote sites, the best choice might be to use several languages depending on developer skills and long-
term maintenance expectations.\line
The .NET Platform programming languages - including Visual Basic .NET, Visual C#, and Visual C++ with managed extensions, and many other programming languages from various vendors - use .NET Framework services and features thr
ough a common set of unified classes. The .NET unified classes provide a consistent method of accessing the platform's functionality. If you learn to use the class library, you will find that all tasks follow the same uniform architecture. You no longer n
eed to learn and master different API architectures to write your applications. \line
In most situations, you can effectively use all of the Microsoft programming languages. Nevertheless, each programming language has its relative strengths and you will want to
understand the features unique to each language. The following sections will help you choose the right programming language for your application. \line \line }{\b Visual Basic .NET}{\line
Visual Basic .NET is the next generation of the Visual Basic language from Microsoft. With
Visual Basic you can build .NET applications, including Web services and ASP.NET Web applications, quickly and easily. Applications made with Visual Basic are built on the services of the common language runtime and take advantage of the .NET Framework.
\line
Visual Basic has many new and improved features such as inheritance, interfaces, and overloading that make it a powerful object-oriented programming language. Other new language features include free threading and structured exception handling. Visual Bas
i
c fully integrates the .NET Framework and the common language runtime, which together provide language interoperability, garbage collection, enhanced security, and improved versioning support. A Visual Basic support single inheritance and creates Microsof
t intermediate language (MSIL) as input to native code compilers. \line
Visual Basic is comparatively easy to learn and use, and Visual Basic has become the programming language of choice for hundreds of thousands of developers over the past decade. An understan
ding of Visual Basic can be leveraged in a variety of ways, such as writing macros in Visual Studio and providing programmability in applications such as Microsoft Excel, Access, and Word. \line \line
Visual Basic provides prototypes of some common project types, including: \line \bullet Windows Application. \line \bullet Class Library. \line \bullet Windows Control Library. \line \bullet ASP.NET Web Application. \line \bullet
ASP.NET Web Service. \line \bullet Web Control Library. \line \bullet Console Application. \line \bullet Windows Service. \line \bullet Windows Service.
\par }{\b Visual C# .NET}{\line Visual C# (pronounced
C sharp) is designed to be a fast and easy way to create .NET applications, including Web services and ASP.NET Web applications. Applications written in Visual C# are built on the services of the common language runtime and take full advantage of the .NE
T Framework. \line \line
C# is a simple, elegant, type-safe, object-oriented language recently developed by Microsoft for building a wide range of applications. Anyone familiar with C and similar languages will find few problems in adapting to C#. C# is designed to b
ring rapid development to the C++ programmer without sacrificing the power and control that are a hallmark of C and C++. Because of this heritage, C# has a high degree of fidelity with C and C++, and developers familiar with these languages can quickly be
come productive in C#. C# provides intrinsic code trust mechanisms for a high level of security, garbage collection, and type safety. C# supports single inheritance and creates Microsoft intermediate language (MSIL) as input to native code compilers.

\par }\pard\plain \s15\ql \li0\ri-1440\sb100\sa100\nowidctlpar\faauto\rin-1440\lin0\itap0 \fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {C# is
fully integrated with the .NET Framework and the common language runtime, which together provide language interoperability, garbage collection, enhanced security, and improved versioning support. C# simplifies and modernizes some of the more complex aspe
c
ts of C and C++, notably namespaces, classes, enumerations, overloading, and structured exception handling. C# also eliminates C and C++ features such as macros, multiple inheritance, and virtual base classes. For current C++ developers, C# provides a pow
erful, high-productivity language alternative. \line \line Visual C# provides prototypes of some common project types, including: \line \bullet Windows Application. \line \bullet Class Library. \line \bullet Windows Control Library. \line \bullet
ASP.NET Web Application. \line \bullet ASP.NET Web Service. \line \bullet Web Control Library. \line \bullet Console Application. \line \bullet Windows Service. \line \line
61. In what order do the events of an ASPX page execute. As a developer is it important to understand these events? \line \line 63. How would you implement inheritance using VB.NET/C#? \line 64. How would you get ASP
.NET running in Apache web servers - why would you even do this? \line 65. How would ASP and ASP.NET apps run at the same time on the same server? \line 66. How many classes can a single .NET DLL contain? \line
67. How is a property designated as read-only? \line 68. How does VB.NET/C# achieve polymorphism? \line 69. How do you turn off cookies for one page in your site? \line 70. How do you create a permanent cookie? \line
71. How can you provide an alternating color scheme in a Repeater control? \line 72.Explain what a diffgram is, and a good use for one \line 73. Explain the differences between Server-side and Client-side code?
\par }\pard\plain \ql \li0\ri-1440\sb100\sa100\nowidctlpar\faauto\rin-1440\lin0\itap0 \fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {74 Differences between }{\b Data grid, Data list and Repeater}{? \line \line
1. Data grid has paging while Data list doesn\rquote t.\line 2. Data list has a property called repeat. Direction = vertical/horizontal. (This is of great help in designing layouts). This is not there in Data grid.\line
3. A repeater is used when more intimate control over html generation is required.\line 4. When only checkboxes/radio buttons are repeatedly served then a checkbox list or radiobuttonlist are used as they involve fewer overheads than a Data grid. \line
\line The Repeater repeats a chunk of HTML you write, it has the least functionality of the three. DataList is the next step up from a Repeater; accept you have very little control ove
r the HTML that the control renders. DataList is the first of the three controls that allow you Repeat-Columns horizontally or vertically. Finally, the DataGrid is the motherload. However, instead of working on a row-by-row basis, you\rquote
re working on a column-by-column basis. DataGrid caters to sorting and has basic paging for your disposal. Again you have little contro, over the HTML. NOTE: DataList and DataGrid both render as HTML tables by default.
\par Out of the 3 controls, I use the Repeater the most due to
its flexibility w/ HTML. Creating a Pagination scheme isn't that hard, so I rarely if ever use a DataGrid. Occasionally I like using a DataList because it allows me to easily list out my records in rows of three for instance. \line \line
75.Describe the difference between }{\b inline and code behind}{ - which is best in a loosely coupled solution. \line Inline code written along side the html in a page. Code-behind is code written in a separate file and referenced by the. aspx page.
\line \line 76. Describe session handling in a webform, how does it work and what are the limits \line 77. }{\b Creating a Key Pair}{\line You can create a key pair using the Strong Name tool (Sn.exe). Key pair files usually have an .snk extension. \line
\line To create a key pair \line At the command prompt, type the following command: \line \line sn \endash k <file name> \line \line In this command, file name is the name of the output file containing the key pair. \line
The following example creates a key pair called sgKey.snk.\line sn -k sgKey.snk \line \line 78. Can you give an example of when it would be appropriate to use a web service as opposed to a non-serviced .NET component \line
79. Let's say I have an existing application written using Visual Studio 6 (VB 6, InterDev 6) and this application utilizes Windows 2000\line COM+ transaction services. How would you approach migrating this application to .NET
\par 80. Can you give an example of what might be best suited to place in the application Start and Session Start subroutines? \line This is where you can set the specific variables for the Application and Session objects. \line 81. Explain loosely coupled
solution\line 82. Can you explain what inheritance is and an example of when you might use it? \line When you want to inherit (use the functionality of) another class. Base Class Employee. A Manager class could be derived from the Employee base class
\line 86. Can you edit data in the Repeater control? \line 87. Can the action attribute of a server-side \line
tag be set to a value and if not how can you possibly pass data from a form page to a subsequent page. Briefly describe the role of global.asax. \line 88. Briefly explain what user
controls are and what server controls are and the differences between the two. \line 89. Briefly explain how the server control validation controls work. \line 90. Briefly explain how server form post-back works (perhaps ask about view state as well).
\line 91. Briefly explain how code behind works and contrast that using the inline style.
\par 92. ASP.NET }{\b Authentication}{ Providers and IIS Security\line ASP.NET implements authentication using authentication providers, which are code modules that verify credentials and implement ot
her security functionality such as cookie generation. ASP.NET supports the following three authentication providers: \line \line }{\b Forms Authentication}{
: Using this provider causes unauthenticated requests to be redirected to a specified HTML form using client side red
irection. The user can then supply logon credentials, and post the form back to the server. If the application authenticates the request (using application-specific logic), ASP.NET issues a cookie that contains the credentials or a key for reacquiring the
client identity. Subsequent requests are issued with the cookie in the request headers, which means that subsequent authentications are unnecessary. \line }{\b Passport Authentication}{
: This is a centralized authentication service provided by Microsoft that offers a single logon facility and membership services for participating sites. ASP.NET, in conjunction with the Microsoft\'ae
Passport software development kit (SDK), provides similar functionality as Forms Authentication to Passport users. \line }{\b Windows Authentication:}{ T
his provider utilizes the authentication capabilities of IIS. After IIS completes its authentication, ASP.NET uses the authenticated identity's token to authorize access. \line \line
To enable a specified authentication provider for an ASP.NET application, you must create an entry in the application's configuration file as follows: \line // web.config file\line <authentication mode = "[Windows/Cookie/Passport/None]">\line
</authentication> \line \line 93. Advantages of }{\b VB.NET }{:\line \line 1. First of all, VB.NET provides managed code execution that ru
ns under the Common Language Runtime (CLR), resulting in robust, stable and secure applications. All features of the .NET framework are readily available in VB.NET.\line
2. VB.NET is totally object oriented. This is a major addition that VB6 and other earlier releases didn't have.\line
3. The .NET framework comes with ADO.NET, which follows the disconnected paradigm, i.e. once the required records are fetched the connection no longer exists. It also retrieves the records that are expected to be accessed in the immedi
ate future. This enhances Scalability of the application to a great extent.\line 4. VB.NET uses XML to transfer data between the various layers in the DNA Architecture i.e. data are passed as simple text strings.\line
5. Error handling has changed in VB.NET. A new T
ry-Catch-Finally block has been introduced to handle errors and exceptions as a unit, allowing appropriate action to be taken at the place the error occurred thus discouraging the use of ON ERROR GOTO statement. This again credits to the maintainability o
f the code.\line
6. Another great feature added to VB.NET is free threading against the VB single-threaded apartment feature. In many situations developers need spawning of a new thread to run as a background process and increase the usability of the application
. VB.NET allows developers to spawn threads wherever they feel like, hence giving freedom and better control on the application.\line \line
7. Security has become more robust in VB.NET. In addition to the role-based security in VB6, VB.NET comes with a new security
model, Code Access security. This security controls on what the code can access. For example you can set the security to a component such that the component cannot access the database. This type of security is important because it allows building componen
ts that can be trusted to various degrees.\line
8. The CLR takes care of garbage collection i.e. the CLR releases resources as soon as an object is no more in use. This relieves the developer from thinking of ways to manage memory. CLR does this for them. \line \line 94 Advantages of migrating }{\b
to VB.NET}{ \line \line Visual Basic .NET has many new and improved language features \emdash such as inheritance, interfaces, and overloading \emdash
that make it a powerful object-oriented programming language. As a Visual Basic developer, you can now cre
ate multithreaded, scalable applications using explicit multithreading. Other new language features in Visual Basic .NET include structured exception handling, custom attributes, and common language specification (CLS) compliance. \line \line
The CLS is a set of rul
es that standardizes such things as data types and how objects are exposed and interoperate. Visual Basic .NET adds several features that take advantage of the CLS. Any CLS-compliant language can use the classes, objects, and components you create in Visu
a
l Basic .NET. And you, as a Visual Basic user, can access classes, components, and objects from other CLS-compliant programming languages without worrying about language-specific differences such as data types. CLS features used by Visual Basic .NET progr
ams include assemblies, namespaces, and attributes. \line \line These are the new features to be stated briefly: \line }{\b Inheritance}{\line
Visual Basic .NET supports inheritance by allowing you to define classes that serve as the basis for derived classes. Derived classes inher
it and can extend the properties and methods of the base class. They can also override inherited methods with new implementations. All classes created with Visual Basic .NET are inheritable by default. Because the forms you design are really classes, you
can use inheritance to define new forms based on existing ones.
\par }{\b Exception Handling\line }{Visual Basic .NET supports structured exception handling, using an enhanced version of the Try...Catch...Finally syntax supported by other languages such as C++. Structured
exception handling combines a modern control structure (similar to Select Case or While) with exceptions, protected blocks of code, and filters. Structured exception handling makes it easy to create and maintain programs with robust, comprehensive error h
andlers.
\par }{\b Overloading\line }{
Overloading is the ability to define properties, methods, or procedures that have the same name but use different data types. Overloaded procedures allow you to provide as many implementations as necessary to handle different kinds of
data, while giving the appearance of a single, versatile procedure. Overriding Properties and Methods The Overrides keyword allows derived objects to override characteristics inherited from parent objects. Overridden members have the same arguments as the
members inherited from the base class, but different implementations. A member's new implementation can call the original implementation in the parent class by preceding the member name with MyBase.
\par }{\b Constructors and Destructors}{\line Constructors are procedures that control initialization of new instances of a class. Conversely, destructors are methods that free system resources when a class leaves scope or is set to \'93Nothing\'94
. Visual Basic .NET supports constructors and destructors using the Sub New and Sub Finalize procedures. \line \line }{\b Data Types\line }{
Visual Basic .NET introduces three new data types. The Char data type is an unsigned 16-bit quantity used to store Unicode characters. It is equivalent to the .NET Framework System. Char data type. The Short data type, a signe
d 16-bit integer, was named Integer in earlier versions of Visual Basic. The Decimal data type is a 96-bit signed integer scaled by a variable power of 10. In earlier versions of Visual Basic, it was available only within a Variant. \line \line }{\b
Interfaces\line }{Interfaces
describe the properties and methods of classes, but unlike classes, do not provide implementations. The Interface statement allows you to declare interfaces, while the Implements statement lets you write code that puts the items described in the interfac
e into practice. \line \line }{\b Delegates\line }{Delegates \emdash objects that can call the methods of objects on your behalf \emdash
are sometimes described as type-safe, object-oriented function pointers. You can use delegates to let procedures specify an event handler method that runs
when an event occurs. You can also use delegates with multithreaded applications. For details, see Delegates and the AddressOf Operator. \line \line }{\b Shared Members\line }{
Shared members are properties, procedures, and fields that are shared by all instances of a class. Sh
ared data members are useful when multiple objects need to use information that is common to all. Shared class methods can be used without first creating an object from a class. \line \line }{\b References\line }{
References allow you to use objects defined in other assemblies. In Visual Basic .NET, references point to assemblies instead of type libraries. For details, see References and the Imports Statement. \line \line }{\b Namespaces\line }{
Namespaces prevent naming conflicts by organizing classes, interfaces, and methods into hierarchies.\line \line }{\b Assemblies\line }{
Assemblies replace and extend the capabilities of type libraries by, describing all the required files for a particular component or application. An assembly can contain one or more namespaces.
\par }{\b Attributes\line }{Attributes enable you to provide additional information about program elements. For example, you can use an attribute to specify which methods in a class should be exposed when the class is used as a XML Web service. \line \line }{
\b Multithreading\line }{Visual Basic .NET allows you to write applications that can perform
multiple tasks independently. A task that has the potential of holding up other tasks can execute on a separate thread, a process known as multithreading. By causing complicated tasks to run on threads that are separate from your user interface, multithr
eading makes your applications more responsive to user input.
\par }{\b\ul ASP.NET Specific}{:\line \line 96. What are the disadvantages of }{\b server side calendar}{ control?\line \line The Calendar control is quite useful but it has a few bugs and drawbacks:\line \line \'b7 Always posts back to the server\line \'b7
It's impossible to set a calendar's appearance using only style sheets (i.e., assigning class names to the CssClass property on the various calendar style elements). This is because the control embeds inline style attributes for many elements when style
properties are defaulted.\line \line For example, the HTML for a day cell might look like:\line \line <td class="calendarDay" align="Center" style="width:12%;">\line <a href="javascript:__doPostBack('Calendar1','1566')"\line
style="color:Black">15</a></td>\line Here, the color setting of style attribute will override any color setting in the calendarDay class.\line \'b7
While you can define different styles for a day based on certain conditions - via the DayStyle, WeekendDayStyle, OtherMonthDayStyle, TodayDayStyle and SelectedDayStyle properties - only one style class is assigned even when more than one may apply.\line
In other words, if today's date falls on a week end and it is selected on the control, the SelectedDayStyle style takes precedence:\line <td class="selectedDay_style" ... >\line Since an HTML element
may be assigned multiple class names in its class attribute, it's possible to include all applicable style classes like this:\line \line <td class="day_style weekendDay_style todayDay_style selectedDay_style" ... >\line
This would give you full control over how it appeared via a style sheet.\line \'b7
Using the DayRender event, you can control which days are selectable and which are not. However, when week or month selectors are active on the control, all days in the given week or month are included in the selection, regardless o
f whether they are individually selectable or not. You could use the SelectionChanged event to manually remove such dates, but that's doing the same work twice.\line \'b7
Lastly, there is no limit on the next and previous month navigation controls. You can pro grammatically prevent viewing of months outside some range via the VisibleMonthChanged event, but the next and previous links are always rendered on the control.
\line \line 97. Describe the role of }{\b inetinfo.exe, aspnet_isapi.dll andaspnet_wp.exe}{\line in the page loading process\line \line inetinfo.exe is theMicrosoft IIS server running,\line
handling ASP.NET requests among other things.When an ASP.NET request is received\line (usually a file with .aspx extension),the ISAPI filter aspnet_isapi.dll takes\line care of it by passing the request tothe actual worker process aspnet_wp.exe.\line
\line 98. What\rquote s the difference between Response.Write() andResponse.Output.Write()?\line The latter one allows you to write formattedoutput.
\par 99. What methods are fired during the page load?\line }{\b Init ()}{ - when the page is instantiated
\par Load () - when the page is loaded into server memory,
\par PreRender ()- the brief moment before the page is displayed to the user asHTML,
\par Unload ()- when page finishes loading.\line \line }{\b 100. }{Where does the Web page belong in the .NET Framework class hierarchy?\line System.Web.UI.Page\line \line 101. Where do you store the information about the user\rquote s locale?\line
System.Web.UI.Page.Culture\line \line 102. What\rquote s the difference between Codebehind="MyCode.aspx.cs" and Src="MyCode.aspx.cs"?\line CodeBehind is relevant to Visual Studio.NET only.\line \line 103. What\rquote s a bubbled event?\line
When you have a complex control, likeDataGrid,\line writing an event processing routine for each object (cell, button,row, etc.)\line is quite tedious. The controls can bubble up their event handlers, allowing\line the main DataGrid event handler to
take care of its constituents.\line \line 104 . Suppose you want a certain ASP.NET function executed on MouseOver overa\line certain button. Where do you add an event handler?\line It\rquote
s the Attributesproperty,the Add function inside that property. So \line btnSubmit.Attributes.Add ("onMouseOver","someClientCode ();")\line \line A simple"Javascript: ClientCode();\'94 in the button control of the .aspx\line
page will attach the handler (javascript function)to the onmouseover event.\line \line 105. What data type does the RangeValidator control support?\line Integer, String and Date.\line \line
106. Where would you use an iHTTPModule, and what are the limitations of any\line approach you might take in implementing one?\line One of ASP.NET\rquote s most useful features is the extensibility\line
of the HTTP pipeline, the path that data takes between client and server.\line You can use them to extend your ASP.NET applications by adding pre- and post-processing\line to each HTTP request coming into your application. For example, if you wanted\line
custom authentication facilities for your application, the best technique\line would be to intercept the request when it comes in and process the request\line in a custom HTTP module.\line \line 107. Explain what a }{\b diffgram is, and a good use for one
}{?\line A DiffGram is an XML format that is used to identify current and original versions of data\line elements. The DataSet uses the DiffGram format to load and persist its contents,\line
and to serialize its contents for transport across a network connection. When\line a DataSet is written as a DiffGram, it populates the DiffGram with all the\line necessary information to accurately recreate the contents, though not the\line
schema, of the DataSet, including column values from both the Original and\line Current row versions, row error information, and row order.\line \line 108. If I\rquote m developing an application that must accommodate multiple secu
rity levels though secure login and my ASP.NET web application is spanned across three web-servers (using round-robin load balancing) what would be the best approach to maintain login-in state for the users? \line
Maintain the login state security through a database.\line \line 109. .}{\b NET Remoting}{\line What\rquote s a Windows process? It\rquote s an application that\rquote s running and had been allocated memory. \line What\rquote
s typical about a Windows process in regards to memory allocation? Each process is allocated its own block of available RAM space, no process can access another process\rquote
code or data. If the process crashes, it dies alone without taking the entire OS or a bunch of other applications down. \line Why do you call it a process? What\rquote s different between process and application in .NET, not comm
on computer usage, terminology? A process is an instance of a running application. An application is an executable on the hard drive or network. There can be numerous processes launched of the same application (5 copies of Word running), but 1 process can
run just 1 application. \line
What distributed process frameworks outside .NET do you know? Distributed Computing Environment/Remote Procedure Calls (DEC/RPC), Microsoft Distributed Component Object Model (DCOM), Common Object Request Broker Architecture (CORBA
), and Java Remote Method Invocation (RMI). \line
What are possible implementations of distributed applications in .NET? .NET Remoting and ASP.NET Web Services. If we talk about the Framework Class Library, noteworthy classes are in System.Runtime.Remoting and System.Web.Services. \line
When would you use .NET Remoting and when Web services? Use remoting for more efficient exchange of information when you control both ends of the application. Use Web services for open-protocol-based information exchange when you are
just a client or a server with the other end belonging to someone else. \line What\rquote s a proxy of the server object in .NET Remoting? It\rquote
s a fake copy of the server object that resides on the client side and behaves as if it was the server. It handles the communication between real server object and the client object. This process is also known as marshaling. \line
What are remotable objects in .NET Remoting? Remotable objects are the objects that can be marshaled across the application domains. You can marshal by valu
e, where a deep copy of the object is created and then passed to the receiver. You can also marshal by reference, where just a reference to an existing object is passed. \line
What are channels in .NET Remoting? Channels represent the objects that transfer the
other serialized objects from one application domain to another and from one computer to another, as well as one process to another on the same box. A channel must exist before an object can be transferred. \line
What security measures exist for .NET Remoting in System.Runtime.Remoting? None. Security should be taken care of at the application level. Cryptography and other security techniques can be applied at application or server level. \line
What is a formatter? A formatter is an object that is responsible for encoding and serializing data into messages on one end, and deserializing and decoding messages into data on the other end. \line
Choosing between HTTP and TCP for protocols and Binary and SOAP for formatters, what are the trade-offs? Binary over TCP is the most effiecient, SOAP over HTTP is the most interoperable. \line What\rquote
s SingleCall activation mode used for? If the server object is instantiated for responding to just one single request, the request should be made in SingleCall mode. \line What\rquote s Singleton activation mo
de? A single object is instantiated regardless of the number of clients accessing it. Lifetime of this object is determined by lifetime lease. \line How do you define the lease of the object? By implementing ILease interface when writing the class code.
\line Can you configure a .NET Remoting object via XML file? Yes, via machine.config and application level .config file (or web.config in ASP.NET). Application-level XML settings take precedence over machine.config. \line
How can you automatically generate interface for the remotable object in .NET with Microsoft tools? Use the Soapsuds tool. \line \line .NET Windows Forms\line \line Write a simple Windows Forms MessageBox statement. \line
2. System.Windows.Forms.MessageBox.Show\line 3. \line 4. \line 5. ("Hello, Windows Forms");\line Can you write a class without specifying namespace? Which namespace does it belong to by default??\line
Yes, you can, then the class belongs to global namespace which has no name. For commercial products, naturally, you wouldn\rquote t want global namespace. \line You are designing a GUI application with
a window and several widgets on it. The user then resizes the app window and sees a lot of grey space, while the widgets stay in place. What\rquote
s the problem? One should use anchoring for correct resizing. Otherwise the default property of a widget on a form is top-left, so it stays at the same location when resized. \line
How can you save the desired properties of Windows Forms application? .config files in .NET are supported through the API to allow storing and retrieving information. They are nothing more than s
imple XML files, sort of like what .ini files were before for Win32 apps. \line
So how do you retrieve the customized properties of a .NET application from XML .config file? Initialize an instance of AppSettingsReader class. Call the GetValue method of AppSetti
ngsReader class, passing in the name of the property and the type expected. Assign the result to the appropriate variable. \line
Can you automate this process? In Visual Studio yes, use Dynamic Properties for automatic .config creation, storage and retrieval. \line
My progress bar freezes up and dialog window shows blank, when an intensive background process takes over. Yes, you should\rquote ve multi-threaded your GUI, with taskbar and main form being one thread, and the background process being the other. \line
What\rquote s the safest way to deploy a Windows Forms app? Web deployment: the user always downloads the latest version of the code; the program runs within security sandbox, properly written app will not require additional security privileges. \line
Why is it not a good idea to insert code into InitializeComponent method when working with Visual Studio? The designer will likely throw it away; most of the code inside InitializeComponent is auto-generated. \line What\rquote
s the difference between WindowsDefaultLocation and WindowsDefaultBounds
? WindowsDefaultLocation tells the form to start up at a location selected by OS, but with internally specified size. WindowsDefaultBounds delegates both size and starting position choices to the OS. \line What\rquote
s the difference between Move and LocationChanged? Resize and SizeChanged? Both methods do the same, Move and Resize are the names adopted from VB to ease migration to C#. \line How would you create a non-rectangular window, let\rquote
s say an ellipse? Create a rectangular form, set the TransparencyKey property to t
he same value as BackColor, which will effectively make the background of the form transparent. Then set the FormBorderStyle to FormBorderStyle.None, which will remove the contour and contents of the form. \line
How do you create a separator in the Menu Designer? A hyphen \lquote -\rquote would do it. Also, an ampersand \lquote &\\\rquote would underline the next letter. \line How\rquote
s anchoring different from docking? Anchoring treats the component as having the absolute size and adjusts its location relative to the parent form. Docking treats t
he component location as absolute and disregards the component size. So if a status bar must always be at the bottom no matter what, use docking. If a button should be on the top right, but change its position with the form being resized, use anchoring.
\line \line }{\b C# Questions:-}{\line What\rquote s the implicit name of the parameter that gets passed into the class\rquote set method? Value, and its datatype depends on whatever variable we\rquote re changing. \line
How do you inherit from a class in C#? Place a colon and then the name of the base class. Notice that it\rquote s double colon in C++. \line Does C# support multiple inheritance? No, use interfaces instead. \line
When you inherit a protected class-level variable, who is it available to? Classes in the same namespace. \line Are private class-level variables inh
erited? Yes, but they are not accessible, so looking at it you can honestly say that they are not inherited. But they are. \line Describe the accessibility modifier protected internal. It\rquote
s available to derived classes and classes within the same Assembly (and naturally from the base class it\rquote s declared in). \line
C# provides a default constructor for me. I write a constructor that takes a string as a parameter, but want to keep the no parameter one. How many constructors should I write? Two. Once you write at least
one constructor, C# cancels the freebie constructor, and now you have to write one yourself, even if there\rquote s no implementation in it. \line What\rquote s the top .NET class that everything is derived from? System.Object. \line How\rquote
s method overriding different from overloading? When overriding, you change the method behavior for a derived class. Overloading simply involves having a method with the same name within the class. \line
What does the keyword virtual mean in the method definition? The method can be over-ridden. \line Can you declare the override method static while the original method is non-static? No, you can\rquote
t, the signature of the virtual method must remain the same, only the keyword virtual is changed to keyword override. \line Can you override private virtual methods? No, m
oreover, you cannot access private methods in inherited classes, have to be protected in the base class to allow any sort of access. \line Can you prevent your class from being inherited and becoming a base class for some other classes? Yes, that\rquote
s what keyword sealed in the class definition is for. The developer trying to derive from your class will get a message: cannot inherit from Sealed class WhateverBaseClassName. It\rquote s the same concept as final class in Java. \line
Can you allow class to be inherited, but prevent the method from being over-ridden? Yes, just leave the class public and make the method sealed. \line What\rquote
s an abstract class? A class that cannot be instantiated. A concept in C++ known as pure virtual method. A class that must be inherited and have the methods over-ridden. Essentially, it\rquote s a blueprint for a class without any implementation. \line
When do you absolutely have to declare a class as abstract (as opposed to free-willed educated choice or decision based on UML diagram)? When at least one of the meth
ods in the class is abstract. When the class itself is inherited from an abstract class, but not all base abstract methods have been over-ridden. \line What\rquote s an interface class? It\rquote
s an abstract class with public abstract methods all of which must be implemented in the inherited classes. \line Why can\rquote
t you specify the accessibility modifier for methods inside the interface? They all must be public. Therefore, to prevent you from getting the false impression that you have any freedom of choice, you are not allowed to specify any accessibility, it
\rquote s public by default. \line Can you inherit multiple interfaces? Yes, why not. \line And if they have conflicting method names? It\rquote s up to you to implement the method inside your own class, so implementation is left entirely up to you.
This might cause a problem on a higher-level scale if similarly named methods from different interfaces expect different data, but as far as compiler cares you\rquote re okay. \line What\rquote
s the difference between an interface and abstract class? In the interface all methods must be abstract; in the abstract class some methods can be concrete. In the interface no accessibility modifiers are allowed, which is ok in abstract classes. \line
How can you overload a method? Different parameter data types, different number of parameters, different order of parameters. \line
If a base class has a bunch of overloaded constructors, and an inherited class has another bunch of overloaded constructors, can you enforce a call from an inherited constructor to an arbitrary base constructor? Yes,
just place a colon, and then keyword base (parameter list to invoke the appropriate constructor) in the overloaded constructor definition inside the inherited class. \line What\rquote
s the difference between System.String and System.StringBuilder classes? System.String is immutable; System.StringBuilder was designed with the purpose of having a mutable string where a variety of operations can be performed. \line What\rquote
s the advantage of using System.Text.StringBuilder over System.String? StringBuilder is more efficient in the cases, where a lot of manipulation is done to the text. Strings are immutable, so each time it\rquote
s being operated on, a new instance is created. \line Can you store multiple data types in System.Array? No. \line What\rquote s the difference between the System.Array.CopyTo
() and System.Array.Clone()? The first one performs a deep copy of the array, the second one is shallow. \line How can you sort the elements of the array in descending order? By calling Sort() and then Reverse() methods. \line What\rquote
s the .NET datatype that allows the retrieval of data by a unique key? HashTable. \line What\rquote s class SortedList underneath? A sorted HashTable. \line Will finally block get executed if the exception had not occurred? Yes. \line What\rquote
s the C# equivalent of C++ catch (\'85), which was a catch-all statement for any possible exception? A catch block that catches the exception of type System.Exception. You can also omit the parameter data type in this case and just write catch \{\}.
\line Can multiple catch blocks be executed? No, once the proper catch code fires off, the control is transferred to the finally block (if there are any), and then whatever follows the finally block. \line
Why is it a bad idea to throw your own exceptions? Well, if at that point you know that an error has occurred, then why not write the proper co
de to handle that error instead of passing a new Exception object to the catch block? Throwing your own exceptions signifies some design flaws in the project. \line What\rquote
s a delegate? A delegate object encapsulates a reference to a method. In C++ they were referred to as function pointers. \line What\rquote s a multicast delegate? It\rquote s a delegate that points to and eventually fires off several methods. \line How
\rquote s the DLL Hell problem solved in .NET? Assembly versioning allows the application to specify not only the library it needs to run (which was available under Win32), but also the version of the assembly. \line
What are the ways to deploy an assembly? An MSI installer, a CAB archive, and XCOPY command. \line What\rquote s a satellite assembly? When you write a multilingual or multi-cultural
application in .NET, and want to distribute the core application separately from the localized modules, the localized assemblies that modify the core application are called satellite assemblies. \line
What namespaces are necessary to create a localized application? System.Globalization, System.Resources. \line What\rquote s the difference between // comments, /* */ comments and /// comments? Single-line, multi-line and XML documentation comments.
\line How do you generate documentation from the C# file commented properly with a command-line compiler? Compile it with a /doc switch. \line What\rquote
s the difference between <c> and <code> XML documentation tag? Single line code example and multiple-line code example. \line Is XML case-sensitive? Yes, so <Student> and <student> are different elements. \line
What debugging tools come with the .NET SDK? CorDBG \endash command-line debugger, and DbgCLR \endash graphic debugger. Visual Studio .NET uses the DbgCLR. To use CorDbg, you must compile the original C# file using the /debug switch. \line
What does the This window show in the debugger? It points to the object that\rquote s pointed to by this reference. Object\rquote s instance data is shown. \line
What does assert() do? In debug compilation, assert takes in a Boolean condition as a parameter, and shows the error dialog if the condition is false. The program proceeds without any interruption if the condition is true. \line What\rquote
s the difference between the Debug class and Trace class? Documentation looks the same. Use Debug class for debug builds, use Trace class for both debug and release builds. \line
Why are there five tracing levels in System.Diagnostics.TraceSwitcher? The tracing dumps can be quite verbose and for some applications that are constantly running you run the risk of overloading the machine and the hard drive there. Five levels ran
ge from None to Verbose, allowing to fine-tune the tracing activities. \line Where is the output of TextWriterTraceListener redirected? To the Console or a text file depending on the parameter passed to the constructor. \line
How do you debug an ASP.NET Web application? Attach the aspnet_wp.exe process to the DbgClr debugger. \line
What are three test cases you should go through in unit testing? Positive test cases (correct data, correct output), negative test cases (broken or missing data, proper handling), exception test cases (exceptions are thrown and caught properly). \line
Can you change the value of a variable while debugging a C# application? Yes, if you are debugging via Visual Studio.NET, just go to Immediate window. \line Explain the three services model (three-tier appli
cation). Presentation (UI), business (logic and underlying code) and data (from storage or other sources). \line
What are advantages and disadvantages of Microsoft-provided data provider classes in ADO.NET? SQLServer.NET data provider is high-speed and robust,
but requires SQL Server license purchased from Microsoft. OLE-DB.NET is universal for accessing other sources, like Oracle, DB2, Microsoft Access and Informix, but it\rquote
s a .NET layer on top of OLE layer, so not the fastest thing in the world. ODBC.NET is a deprecated layer provided for backward compatibility to ODBC engines. \line What\rquote
s the role of the DataReader class in ADO.NET connections? It returns a read-only dataset from the data source when the command is executed. \line What is the wildcard character in SQL? Let\rquote
s say you want to query database with LIKE for all employees whose name starts with La. The wildcard character is %, the proper query with LIKE would involve \lquote La%\rquote . \line
Explain ACID rule of thumb for transactions. Transaction must be Atomic (it is one unit of work and does not dependent on previous and following transactions), Consistent (data is either committed or roll back, no \'93in-between\'94
case where something has been updated and something hasn\rquote t), Isolated (no transaction sees the intermediate results of the current transaction), Durable (the values persist if the data had been committed even if the system crashes right after).
\line What connections does Microsoft SQL Server support? Windows Authentication (via Active Directory) and SQL Server authentication (via Microsoft SQL Server username and passwords). \line
Which one is trusted and which one is untrusted? Windows Authentication is trusted because the username and password are checked with the Active Directory, the SQL Server authentication is untrusted,
since SQL Server is the only verifier participating in the transaction. \line Why would you use untrusted verificaion? Web Services might use it, as well as non-Windows applications. \line
What does the parameter Initial Catalog define inside Connection String? The database name to connect to. \line What\rquote s the data provider name to connect to Access database? Microsoft.Access. \line
What does Dispose method do with the connection object? Deletes it from the memory. \line What is a pre-requisite for connection pooling? Multiple proc
esses must agree that they will share the same connection, where every parameter is the same, including the security settings. \line \line }{\b From Some Interviewer}{:\line \line If it were a relatively short interview, I would ask:\line
- Briefly explain how code behind works and contrast that using the inline\line style.\line - What are HTML controls, Web controls, and server controls?\line - Briefly explain how the server control validation controls work.\line
- Briefly explain what user controls are and what server controls are and\line the differences between the two.\line - Briefly explain how server form post-back works (perhaps ask about view state as well).\line
- Can the action attribute of a server-side <form> tag be set to a value and if not how can you possibly pass data from a form page to a subsequent page. (Extra credit: Have you heard of comdna. :-)\line - Briefly describe the role of global.asax.\line
- How would ASP and ASP.NET apps run at the same time on the same server?\line - What are good ADO.NET object(s) to replace the ADO Record set object.\line \line Seems like some pretty tough questions for an interview (and certainly\line
questions like the ones above should not be the only type asked at an\line interview) but it's a tough job market out there, a lot of people claim to\line have a lot of experience with ASP.NET but have really just i
nstalled Beta 1 and maybe Beta 2 and played around for a week, and something like the above should give a quick sense as to whether someone has hands-on with ASP.NET or not.\line \line
- Oh, and of course, what is the correct language to code ASP.NET pages with? (The only correct answer would be C#. :-) Maybe this should be the first question.
\par From One more Interviewer!!\line \line If the Interview is not for a Senior developer\'85.I would go like this\'85.\line \line ASP.Net\line \line Q. Explain the differences }{\b between Server-side and Client-side code?}{ \line \line
A. Server-side code executes on the server. Client-side code executes in the context of the clients' browser. \line \line Q. What are some ways to manage state in an ASP.Net application? \line \line A. Session objects, Application o
bjects, View State, cookies, hidden form fields.\line \line Q. What does the "EnableViewState" property do? Why would I want it on or off? \line \line
A. It allows page objects to save their state in a Base64 encoded string in the page HTML. One should only have it enabled wh
en needed because it adds to the page size and can get fairly large for complex pages with many controls. (It takes longer to download the page).\line \line
Q. What is the difference between Server. Transfer and Response. Redirect? Why would I choose one over the other? \line \line
A. Server.Transfer transfers excution directly to another page. Response. Redirect sends a response to the client and directs the client (the browser) to load the new page (it causes a roundtrip). If you don't need to execute code on the client, Tra
nsfer is more efficient.\line \line Q. How can I maintain Session state in a Web Farm or Web Garden? \line A. Use a State Server or SQL Server to store the session state.\line \line Q. What base class do all Web Forms inherit from? \line
A. The Page class.
\par Q. What does WSDL stand for? What does it do? \line A.(Web Services Description Language). It describes the interfaces and other information of a web service.\line \line
Q. Which WebForm Validator control would you use if you needed to make sure the values in two different WebForm controls matched? \line A. CompareValidator Control \line \line
Q. What property must you set, and what method must you call in your code, in order to bind the data from some data source to the Repeater control? \line A. You must set the DataSource property and call the DataBind method.\line \line }{\b\ul C# Questions
}{:-\line Q. Can you explain what inheritance is and an example of when you might use it? \line
A. Inheritance allows us to extend the functionality of a base class. It is an "Is a" type of relationship rather than a "Uses" type of relationship (a dalmation IS
A dog which IS A canine which IS A mammal - dalmations inherist from dog which inherits from canine which inherits from mammal). All child classes retain the properties and methods of their parent classes but may override them. When you want to inherit (u
se the functionality of) another class. Base Class Employee. A Manager class could be derived from the Employee base class. \line \line Q. Does C# support multiple-inheritance? \line A. No, use interfaces instead. \line \line
Q. Can you prevent your class from being inherited by another class? \line A. Yes. The keyword \'93sealed\'94 will prevent the class from being inherited. \line \line Q. What does the keyword \'93virtual\'94 declare for a method or property? \line
A. The method or property can be overridden.\line \line Q. What's the top .NET class that everything is derived from? \line A. System.Object.\line \line Q. What does it mean that a String is immutable? \line
A. Strings cannot be altered. When you alter a string (by adding to it for example), you are actually creating a new string.\line \line Q. If I have to alter a string many times, such as mutliple concatenations, what class should I use? \line
A. StringBuilder. It is not immutable and is very efficient.\line \line Q. In a Try - Catch - Finally block, will the finally block execute if an exception has not occurred? If an Exception has occurred? \line A. Yes and yes. \line \line
Q. Whats MSIL, and why should developers need an appreciation of it, if at all? \line A. MSIL is the Microsoft Intermediate Language. All .NET compatible languages will get converted to MSIL.\line \line Q. Explain the three tier or n-Tier model. \line
A. Presentation (UI), business (logic and underlying code) and data (from storage or other sources).\line \line Q. What is SOA? \line
A. Service Oriented Architecture. In SOA you create an abstract layer that your applications use to access various "services" and can aggregate the se
rvices. These services could be databases, web services, message queues or other sources. The Service Layer provides a way to access these services that the applications do not need to know how the access is done. For example, to get a full customer recor
d
, I might need to get data from a SGL Server database, a web service and a message queue. The Service layer hides this from the calling application. All the application knows is that it asked for a full customer record. It doesn't know what system or syst
ems it came from or how it was retrieved.\line \line Q. What is the role of the DataReader class in ADO.NET connections? \line A. It returns a forward-only, read-only view of data from the data source when the command is executed.\line \line
Q. Is XML case-sensitive? \line A. Yes.\line \line Q. Can you explain some differences between an ADO.NET Dataset and an ADO Recordset? (Or describe some features of a Dataset).\line \line
A. A Dataset can represent an entire relational database in memory, complete with tables, relations, and views. A Dataset is designe
d to work without any continuing connection to the original data source. Data in a Dataset is bulk-loaded, rather than being loaded on demand. There's no concept of cursor types in a DataSet. Datasets have no current record pointer You can use For Each lo
ops to move through the data. You can store many edits in a Dataset, and write them to the original data source in a single operation. Though the DataSet is universal, other objects in ADO.NET come in different versions for different data sources\line
\line Q. Name some of the Microsoft Application Blocks. Have you used any? Which ones? \line A. Examples:\line Exception Management \line Logging \line Data Access \line User Interface \line Caching Application Block for .NET \line
Asynchronous Invocation Application Block for .NET \line Configuration Management Application Block for .NET \line (there are others) We use Exception and Data Access\line \line }{\b\kerning36 Technical interview questions
\par }\pard \ql \li0\ri0\sb100\sa100\nowidctlpar\faauto\rin0\lin0\itap0 {1) Can u declare multiple data types in the system. array?\line \line 2) What the .net data type that allowed the retrieval of data by unique key?\line \line 3) What\rquote
s the class sorted list beneath?\line \line 4) Will finally block get executed if not occur the exception?\line \line 5) What\rquote s the top .net class that everything is derived class?\line \line 6) Can u inherit multiple interfaces?\line \line
7) Where does the belong in the .net framework class hierarchy?\line \line 8)Can u write a class without the namespace?\line \line 9) Can u change the value of a variable while debugging in c#?\line \line
10) What type of code (server or client) is form in code behind technique page?\line \line 11) Is it possible to edit the data in the repeater control?\line \line
12) Is it necessary to create one web or windows application to check the webservervice? Yes/no\line \line 13) Diff b/w string and string builder?\line \line 14) Resource file: how to use resource files, how to know which language to use?\line \line
15) What is the smart navigation?\line \line 16) How manage pagination in a page?\line \line 17) Explain different capabilities type when creating a COM component?\line \line
17) What 2 methods are called from the object context object to inform MTS that the transaction was success or not?\line \line 19) What tool used to configure the port manager and protocols for DCOM communication?\line \line 20) Benefits of MTS.}{
\f1\fs20
\par }\pard \ql \li0\ri-1440\sb100\sa100\nowidctlpar\faauto\rin-1440\lin0\itap0 {\f1\fs20
\par }}

{\rtf1\ansi\ansicpg1252\uc1 \deff0\deflang1033\deflangfe1033{\fonttbl{\f0\froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f1\fswiss\fcharset0\fprq2{\*\panose 020b0604020202020204}Arial;}
{\f73\froman\fcharset238\fprq2 Times New Roman CE;}{\f74\froman\fcharset204\fprq2 Times New Roman Cyr;}{\f76\froman\fcharset161\fprq2 Times New Roman Greek;}{\f77\froman\fcharset162\fprq2 Times New Roman Tur;}
{\f78\froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\f79\froman\fcharset178\fprq2 Times New Roman (Arabic);}{\f80\froman\fcharset186\fprq2 Times New Roman Baltic;}{\f81\fswiss\fcharset238\fprq2 Arial CE;}{\f82\fswiss\fcharset204\fprq2 Arial Cyr;}
{\f84\fswiss\fcharset161\fprq2 Arial Greek;}{\f85\fswiss\fcharset162\fprq2 Arial Tur;}{\f86\fswiss\fcharset177\fprq2 Arial (Hebrew);}{\f87\fswiss\fcharset178\fprq2 Arial (Arabic);}{\f88\fswiss\fcharset186\fprq2 Arial Baltic;}}
{\colortbl;\red0\green0\blue0;\red0\green0\blue255;\red0\green255\blue255;\red0\green255\blue0;\red255\green0\blue255;\red255\green0\blue0;\red255\green255\blue0;\red255\green255\blue255;\red0\green0\blue128;\red0\green128\blue128;\red0\green128\blue0;
\red128\green0\blue128;\red128\green0\blue0;\red128\green128\blue0;\red128\green128\blue128;\red192\green192\blue192;}{\stylesheet{\ql \li0\ri0\widctlpar\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0
\fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \snext0 Normal;}{\s1\ql \li0\ri0\sb100\sa100\keepn\nowidctlpar\faauto\outlinelevel0\rin0\lin0\itap0 \b\fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext0 heading 1;}{\*\cs10
\additive Default Paragraph Font;}}{\info{\author Administrator}{\operator Administrator}{\creatim\yr2005\mo9\dy22\hr11\min37}{\revtim\yr2005\mo9\dy22\hr11\min50}{\version80}{\edmins13}{\nofpages24}{\nofwords8782}{\nofchars50061}{\*\company MCN Solutions}
{\nofcharsws61478}{\vern8247}}\margl1008\margr1008\margt1152\margb1008 \widowctrl\ftnbj\aenddoc\noxlattoyen\expshrtn\noultrlspc\dntblnsbdb\nospaceforul\hyphcaps0\horzdoc\dghspace120\dgvspace120\dghorigin1701\dgvorigin1984\dghshow0\dgvshow3
\jcompress\viewkind4\viewscale100\nolnhtadjtbl \fet0\sectd \linex0\sectdefaultcl {\*\pnseclvl1\pnucrm\pnstart1\pnindent720\pnhang{\pntxta .}}{\*\pnseclvl2\pnucltr\pnstart1\pnindent720\pnhang{\pntxta .}}{\*\pnseclvl3\pndec\pnstart1\pnindent720\pnhang
{\pntxta .}}{\*\pnseclvl4\pnlcltr\pnstart1\pnindent720\pnhang{\pntxta )}}{\*\pnseclvl5\pndec\pnstart1\pnindent720\pnhang{\pntxtb (}{\pntxta )}}{\*\pnseclvl6\pnlcltr\pnstart1\pnindent720\pnhang{\pntxtb (}{\pntxta )}}{\*\pnseclvl7
\pnlcrm\pnstart1\pnindent720\pnhang{\pntxtb (}{\pntxta )}}{\*\pnseclvl8\pnlcltr\pnstart1\pnindent720\pnhang{\pntxtb (}{\pntxta )}}{\*\pnseclvl9\pnlcrm\pnstart1\pnindent720\pnhang{\pntxtb (}{\pntxta )}}\pard\plain
\s1\ql \li0\ri0\sb100\sa100\keepn\nowidctlpar\faauto\outlinelevel0\rin0\lin0\itap0 \b\fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {Dotnet framework:-
\par }\pard\plain \ql \li0\ri0\sb100\sa100\nowidctlpar\brdrb\brdrs\brdrw15\brsp20 \faauto\rin0\lin0\itap0 \fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {
It is a Framework in which Windows applications may be developed and run.The Microsoft .NET Framework is a platform for building, deploying, and running Web Services and applications. It provides a highly productive, standards-based, mul
ti-language environment for integrating existing investments with next-generation applications and services as well as the agility to solve the challenges of deployment and operation of Internet-scale applications. The .NET Framework consists of three mai
n
parts: the common language runtime, a hierarchical set of unified class libraries, and a componentized version of Active Server Pages called ASP.NET. The .NET Framework provides a new programming model and rich set of classes designed to simplify applica
t
ion development for Windows, the Web, and mobile devices. It provides full support for XML Web services, contains robust security features, and delivers new levels of programming power. The .NET Framework is used by all Microsoft languages including Visua
l C#, Visual J#, and Visual C++. \line \line Visual Studio .NET is a Rapid Application tool.\line \'b7 Drag n Drop\line \'b7 Intellisense\line \'b7 Debugging\line \'b7 Project Templates\line \line
CLR is .NET equivalent of Java Virtual Machine (JVM). It is the runtime that converts a MSIL code into the host machine language code, which is then executed appropriately.\line \line
The CLR is the execution engine for .NET Framework applications. It provides a number of services, including: \line \line \'b7 Code management (loading and execution) \line \'b7 Application memory isolation \line \'b7 Thread management\line \'b7
Verification of type safety \line \'b7 Conversion of IL to native code. \line \'b7 Access to metadata (enhanced type information) \line \'b7 Managing memory for managed objects (memory management)\line \'b7 Enforcement of code access security \line \'b7
Exception handling, including cross-language exceptions \line \'b7 Interoperation between managed code, COM objects, and pre-existing DLL's (unmanaged code and data) i.e.\line Robustness\line \'b7 Automation of object layout \line \'b7
Support for developer services (profiling, debugging, and so on).\line \line Managed c
ode is code that is written to target the services of the Common Language Runtime. In order to target these services, the code must provide a minimum level of information (metadata) to the runtime. All C#, Visual Basic .NET, and JScript .NET code is manag
ed by default. Visual Studio .NET C++ code is not managed by default, but the compiler can produce managed code by specifying a command-line switch (/CLR). \line
Closely related to managed code is managed data--data that is allocated and de- allocated by the Com
mon Language Runtime's garbage collector. C#, Visual Basic, and JScript .NET data is managed by default. C# data can, however, be marked as unmanaged through the use of special keywords. Visual Studio .NET C++ data is unmanaged by default (even when using

the /CLR switch), but when using Managed Extensions for C++, a class can be marked as managed using the __gc keyword. As the name suggests, this means that the memory for instances of the class is managed by the garbage collector. In addition, the class b
e
comes a full participating member of the .NET Framework community, with the benefits and restrictions that it brings. An example of a benefit is proper interoperability with classes written in other languages (for example, a managed C++ class can inherit
from a Visual Basic class). An example of a restriction is that a managed class can only inherit from one base class.\line \line }{\b CTS defines}{
all of the basic types that can be used in the .NET Framework and the operations performed on those type. All this time we hav
e been talking about language interoperability, and .NET Class Framework. None of this is possible without all the language sharing the same data types. What this means is that an int should mean the same in VB, VC++, C# and all other .NET compliant langu
ages. This is achieved through introduction of Common Type System (CTS). \line CLS = standards,guidelines for Compiler Vendors.\line CTS = datatypes r defined by .NET framework NOT defined by languages.\line \line
Thread : a Unit of Execution; When its bare minimum no.of threads Active \endash
i.e. 1 thread active ; Tats it : then tat Thread is called Default thread.If there are more threads [2 or more] CLR comes/steps in place of Operating System.dotNet supports MultiThreading !\line \line \line
In .NET Framework , all code resides in Types i.e. Classes\line \'b7 Logical arrangement \endash namespaces\line \'b7 Physical arrangement - assemblies\line Types reside in Namespaces & Namespaces reside in Assemblies.\line ' Namespace=Folder; Class=File
\line \line }{\b What is the difference between a namespace and assembly name}{?\line A namespace is a logic
al naming scheme for types in which a simple type name, such as MyType, is preceded with a dot-separated hierarchical name. Such a naming scheme is completely under control of the developer. For example, types MyCompany.FileAccess.A and MyCompany.FileAcce
s
s.B might be logically expected to have functionally related to file access. The .NET Framework uses a hierarchical naming scheme for grouping types into logical categories of related functionality, such as the ASP.NET application framework, or remoting f
u
nctionality. Design tools can make use of namespaces to make it easier for developers to browse and reference types in their code. The concept of a namespace is not related to that of an assembly. A single assembly may contain types whose hierarchical nam
es have different namespace roots, and a logical namespace root may span multiple assemblies. In the .NET Framework, a namespace is a logical design-time naming convenience, whereas an assembly establishes the name scope for types at run time. \line
\line Namespace => a Collection of names wherein each name is Unique.\line They form the logical boundary for a Group of classes.\line Namespace \endash must be specified in Project-Properties.\line \line Assembly => a software Output Unit;It\rquote
s a unit of Deployment & a unit of versioning.Assemblies contain MSIL code.\line Assemblies r Self-Describing. [metadata,manifest]\line
An assembly is the primary building block of a .NET Framework application. It is a collection of functionality that is built, versioned, and deployed as a single implementation unit (as
one or more files). All managed types and resources are marked either as accessible only within their implementation unit, or as accessible by code outside that unit. \line
.NET Assembly contains all the metadata about the modules, types, and other elements it contains in the form of a \'93manifest.\'94
The CLR loves assemblies because differing programming languages are just perfect for creating certain kinds of applications. For example, COBOL stands for Common Business-Oriented Language because it\rquote s tailor-made for
creating business apps. However, it\rquote s not much good for creating drafting programs. Regardless of what language you used to create your modules, they can all work together within one Portable Executable Assembly. \line There\rquote
s a hierarchy to the structure of .NET code. That hierarchy is \'93Assembly -> Module -> Type -> Method." \line }{\b Assemblies can be static or dynamic}{
. Static assemblies can include .NET Framework types (interfaces and classes), as well as resources for the assembly (bitmaps, JPEG files, resource file
s, and so on). Static assemblies are stored on disk in portable executable (PE) files. You can also use the .NET Framework to create dynamic assemblies, which are run directly from memory and are not saved to disk before execution. You can save dynamic as
semblies to disk after they have executed.\line Assemblies also allow Side-by-Side execution \endash 2 versions of same assembly being used @ same time.\line \line References ALWAYS contain names \endash
which r ASSEMBLY names of External Dependencies in ur Project.\line code-construct for Attribute [attribute for assembly]\line [Assembly: company name]\line [Assembly: configuration]\line \line MSIL is an Instruction-set.\line
MSIL by itself is a Programming Language.\line MSIL faster/optimized w.r.t java-byte-code.\line A .NET programming language (C#, VB.NET, J# etc.) doe
s not compile into executable code; instead it compiles into an intermediate code called Microsoft Intermediate Language (MSIL). As a programmer one need not worry about the syntax of MSIL - since our source code in automatically converted to MSIL. The MS
IL code is then send to the CLR (Common Language Runtime) that converts the code to machine language, which is, then run on the host machine. MSIL is similar to Java Byte code. \line
MSIL is the CPU-independent instruction set into which .NET Framework programs are compiled. It contains instructions for loading, storing, initializing, and calling methods on objects. \line
Combined with metadata and the common type system, MSIL allows for true cross- language integration Prior to execution, MSIL is converted to machine code. It is not interpreted.\line \line }{\b METADATA }{\line \'b7 Wats the name of Assembly ?\line \'b7
Wat r Classes available ?\line \'b7 Wat is Version no. ? \line \'b7 Wat r Programming Languages used ? \line Metadata is information about a PE. In COM, metadata is communicated through non-standardized t
ype libraries. In .NET, this data is contained in the header portion of a COFF-compliant PE and follows certain guidelines; it contains information such as the assembly\rquote s name, version, language (spoken, not computer\emdash a.k.a., \'93culture\'94
), what external types are referenced, what internal types are exposed, methods, properties, classes, and much more. The CLR uses metadata for a number of specific purposes. Security is managed through a public key in the PE\rquote
s header. Information about classes, modules, and so
forth allows the CLR to know in advance what structures are necessary. The class loader component of the CLR uses metadata to locate specific classes within assemblies, either locally or across networks. Just-in-time (JIT) compilers use the metadata to tu
r
n IL into executable code. Other programs take advantage of metadata as well. A common example is placing a Microsoft Word document on a Windows 2000 desktop. If the document file has completed comments, author, title, or other Properties metadata, the te
xt is displayed as a tool tip when a user hovers the mouse over the document on the desktop. You can use the Ildasm.exe utility to view the metadata in a PE. Literally, this tool is an IL disassembler. \line \line
Module is a Class whose all members are static/shared.\line \line }{\b Advantages of VB.NET }{\line
1. First of all, VB.NET provides managed code execution that runs under the Common Language Runtime (CLR), resulting in robust, stable and secure applications. All features of the .NET framework are readily available in VB.NET.2. V
B.NET is totally object oriented. This is a major addition that VB6 and other earlier releases didn't have.3. The .NET framework comes with ADO.NET, which follows the disconnected paradigm, i.e. once the required records are fetched the connection no long
e
r exists. It also retrieves the records that are expected to be accessed in the immediate future. This enhances Scalability of the application to a great extent.4. VB.NET uses XML to transfer data between the various layers in the DNA Architecture i.e. da
t
a are passed as simple text strings.5. Error handling has changed in VB.NET. A new Try-Catch-Finally block has been introduced to handle errors and exceptions as a unit, allowing appropriate action to be taken at the place the error occurred thus discoura
g
ing the use of ON ERROR GOTO statement. This again credits to the maintainability of the code.6. Another great feature added to VB.NET is free threading against the VB single-threaded apartment feature. In many situations developers need spawning of a new

thread to run as a background process and increase the usability of the application. VB.NET allows developers to spawn threads wherever they feel like, hence giving freedom and better control on the application.7. Security has become more robust in VB.NET
.
In addition to the role-based security in VB6, VB.NET comes with a new security model, Code Access security. This security controls on what the code can access. For example you can set the security to a component such that the component cannot access the

database. This type of security is important because it allows building components that can be trusted to various degrees.8. The CLR takes care of garbage collection i.e. the CLR releases resources as soon as an object is no more in use. This relieves the
developer from thinking of ways to manage memory. CLR does this for them. \line \line BinaryIntellect sir - Points \endash Main Adv.\line 1. fully object-oriented\line 2. Rich built-in functionality\line 3. Automatic memory mangement\line
4. No registration & versioning issues\line 5. No marshalling overheads \endash Avoided bcoz of C T S\line 6. xcopy deployment [made easier]\line 7. EAI made easy thru Web Services.\line \line Classes can contain :-\line 1. variables\line 2. properties
\line 3. methods\line 4. constructors\line 5. finalizers\line 6. events & delegates\line \line 'Struct, enum, property /no New keyword/ also Must create an instance\line purpose of using an enum is Basically to make s.c. more readable \'85.\line
'Also can contain methods...\line \line ' Property only for private/protected variables ....\line ' pvar1.age=23 => call of Set\line ' c.wl(pvar1.age) => call of Get\line can use keywords ReadOnly,WriteOnly with a Property as well \'85\'85\line \line
Member vars = Field vars => @ Class-level; [these represent the State of ur Class];\line These member vars WILL NOT be DIRECTLY Exposed to end-user.\line PROPERTIES r recommended over member-vars bcoz they provide\line Data Validation.\line \line
'Dim .... Redim .... Then data will be lost\line 'BUT Dim .... Redim Preserve .... then no probs!\line 'str1=str1+str2 OR str1=str1 & str2 [string concatenation]\line ' Try.... Catch ex as Exception.... Finally.... End Try\line 'Exception=CLASS; ex=in
stance\line 'Try can be with more than 1 catch\line 'Finally is Not Compulsory;Freeing the memory used up;\line whenever present Finally is ALWAYS executed\line 'Catch executed ONLY when error occurs\line \line
STATIC or Shared => called straight-directly by OS / CLR .\line 'Shared ===> basically access "that class" without creating an instance[objt]\line string[] args => command-line arguments.\line \line 'Both constr destrr r methods/procedures; \line
constrr is marked by New(); destrr marked by Finalize()\line 'Constrr = initialization & database connectivity ;\line 'Destrr = Clean Up ; \line destrr / finalizer = a funcn tat gets called automatically by Garbage Collector when tat Object is NOT in use.
\line \line 'Signature w.r.t a proc/funcn\line 'Also 2 mainpts of a sgnre --- Return type & Parameters\line 'c.wl , WriteLine() mtd features both Shared, OverLoaded\line \line by default \endash No command-line arguments r specified in VB.NET code.\line
------------------------------------------------------\line ABSTRACTION\line A process of filtering out unwanted details based on a given context & identify a programmable entity from a Real World situation.\line It\rquote s in the \'93mind\'94
of the Developer. < ONLY taking relevant details for Design of appropriate class >\line \line ENCAPSULATION\line A tactic of bundling data & functions [tat act on tat data] together\line aka - Data Hiding ; Classes, Properties
& Methods use encapsulation.\line \line INHERITANCE\line A process of Specialized classes from Generic ones. [class_Manager is a special case of class_Employee]\line : at a time ONLY 1 base class\line
Main Aim of Inheritance : - Specialization & in the process u can achieve Re-Use.\line Multiple inheritance NOT supported in .NET\line \line Interfaces --- \line - a set of Property & Function signatures without any implementation.\line
- a class implementing an interface must provide implementation for ALL members.\line these r like a Contract \line - All members must be implemented\line - Everything must be PUBLIC\line - they provide templates for Classes\line
- Interfaces r developed prior-to/before Developing of Classes\line 'an Abstract Class contains at least 1 Abstract Method[with no body]\line can have other/normal mtds too \'85\'85\'85\line 'Interfa
ce is a pure abstract class; all mtds r abstract [only 1 parent class]\line 'b/w Classes ; b/w Interfaces =Inherits\line 'b/w Class and Interface =Implements\line eg. Code \line Class B \line inherits A\line implements I1,I2,I3 .................\line
eg. Code \line namespace Employee\line public interface Iperson\line \{\line DateTime D_O_B\line \{\line get;\line set;\line \}\line void Eat();\line \}\line Inherits Cemployee\line Implements Iperson\line \line
Rule :- var of type Interface can point to Object of Class tat implements tat Interface\line \line I N T E R F A C E -> Within the same Project, add Class [PTR] name ur class as \'93 all Interface names begin with I \'94 \line \line POLYMORPHISM\line
Multiple forms of the same entity\line Eg. Door.Open() Book.Open() , Car.Run() Horse.Run() \'85\'85\'85.\line 2 types \endash \line P via Inheritance\line P via Interfaces\line ---------------------------------------------------------
-------------------------------------------------\line EVENTS - see presentation-study !!!\line 'we CAN have USE OF BOTH \{WithEvents,Handles\} & \{AddHandler,Invoke\} in an eg. program\line E V E N T => A notification from a class to the client.\line
\line Modus operandi for Events n Delegates ---\line 1. 1st ur Class shud have an Event defined \line 2. In client-appcn u must have some Event-Handler\line 3. Agreed syntax b/w these 2 [ === delegate ]\line \line
a Delegate - a type-safe funcn pointer.Events r instances of Delegates.\line Inside/within .NET f/w , Delegates r treated as Classes.\line \line An Event-Delegate requires 3 things :-\line 1. Class with an event \{ publisher \}\line
2. Class with an event-handler \{ subscriber \}\line 3. Agreed syntax \{ delegate \}\line \line Event Publisher Event Subscriber\line \line Declare a delegate tat represents Create eventhandler funcn matching\line Signature of event signature of delegate
\line \line Declare an instance of event Subcribe to the event \line \line Raise the event \line \line rem ADO.net !@#$%\line \line ' DBMS --- S/W for managing a database\line ' RDBMS - relational DBMS . eg. SQL,Oracle,Access,DB2,Informix....\line
' MAIN IDEA ==> cnxn b/w RDBMS & VB.Net\line \line ' Dataset -> a collection of datatables[classes].\line ' DataSet always with Data Adapter ..\line ' OLEDB -> System.Data.Oledb\line ' SQL S -> System.Data.SqlClient\line
'Data Reader --- specifically for Web Forms [ReadOnly;ForwardOnly];\line '[cnxn must be online] [1 Record at a time] .....\line ' StoredProcedure .... \line rem cmndText= "name of proc"\line rem cmndType= "CommandType.StoredProcedure"\line
' these r basically for repetitive action/loop/code ........\line \line rem Crystal Reports !@#$%\line \line ' 2 ways of intzg/lead-to DataSource - OFD & ds-da \line ' OFD ke thru useof CRV.ReportSource=ofd.Filename; CRV.ReportSource=rpt ;\line
' [rpt = Report object]
\par }\pard \ql \li0\ri0\sb100\sa100\nowidctlpar\faauto\rin0\lin0\itap0 {4 fundas :\line ' Filling the Dataset\line ' Creating the Report object [rpt]\line ' Assign the Dataset to rpt\line ' Assign the Report to the ReportViewer\line
****************************************\line ' Note that Always along with .xsd,.resx ..... files; theres a .vb file also created!\line ' Export Report 4 possibilties : .pdf, .rtf , .xls[MS-EXCEL] , .doc[MS-WORD]\line \lquote .resx is a Resource-file
\'85\'85\'85\'85\'85\'85\'85\'85\line \line rem WebService !@#$%\line \line ' standards used by a Web Service -> HTTP,XML,SOAP\line ' Web Service === Class located on a WebSite ...\line ' SOAP === Simple Object Access Protocol .....\line
' WSDL === Web Service Description Language \line ' unlike in HTML; in XML we can have custom tags ......\line ' w.r.t Web Service .... Imports System.Web.Services; attributes \line ' all ws's have extension ===> .asmx\line \line ' IMPT STEPS :\line
' $ Create/code Web Service...\line ' $ Make a Client Application..\line ' $ Add a Web Reference ...\line ' $# after add-web-ref; 2 stmts\line ' dim ms as com10.MathService\line ' inside all subs :-> ms = New com10.MathService()\line
' due to xml we can have xfer of complex datatypes too such as \line ' arrays,collections,dataset ...\line rem rite way to rite ritely is ---->\line ' <WEBSERVICE(NAMESPACE:="HTTP: ?) mathservice com5_\line \line ' IMPT PTS :\line
' # code will be executed on the Server\line ' # can be used for n/w Internet as wella as Intranet\line ' # Proxy class action done only once ....\line ' # for seeing the Result; we need to open IE browser & then type the reqd.url ...\line
------------------------------------------------------------------------------------------------------------\line rem COM , Interop assembly !@#$%\line \line Component Object Model\line \line ' COM is a standard .... extenss .dll .tlb .ocx ; \line
' .NET === Assembly --- .dll\line ' .COM === Type Library --- .dll .tlb .ocx\line ' note -> VB6 is heavily dept on COM stuff.......[primary reason why we still need to deal with COM]\line ' Interop assemblies r .NET assbs that act as a bridge b/w \line
Managed & Unmanaged codes.....\line ' egs . of IA --- CCW [vb6 needs ccw] , RCW [vb.net needs rcw] \line \line ' rules for Exposing as .COM component -\line ' #1 must --- 1 public default-zero-arg-Constrr\line
' #2 Members have to be public & non-Shared i.e. vars,mtds[smp],events,properties\line ' #3 types cant be Abstract \line \line ' 2 Registers/Directories/YellowPages .... Windows Registry & GAC .....\line ' usual commands w.r.t COM :- \line
' gacutil , al , sn , tlbexp , tlbimp , regasm , aximp \line ' IMPT-Must w.r.t exporting; Client m/c shud have .net FrameWork[i.e. Runtime].....\line ' i.e when .net cmpnt ko humlog VB6 [Client]m/c pe using COM-funda use karenge tab ....\line \line
As most of you know that .Net does not encourage the development of COM components and provides a different solution to making reusable components through Assemblies. But, there are a lot of COM compo
nents present which our .Net application might need to use. Fortunately, .Net provides an extremely simple approach to achieve this.\line \line This is achieved by using \lquote Wrapper Classes\rquote and \lquote Proxy Components\rquote
. .Net wraps the COM component into .Net assembly technically called \lquote Runtime Callable Wrapper\rquote or RCW. Then u can call and use your COM component just as a .Net (or C#, if u are using C#) Assembly\line \line }{\b C O M components ---}{
\line 1. These r binary reusable pieces of software\line 2. Contain 1 or more Classes\line 3. These have extension of .dll\line 4. In order to create components in VS.NET \endash create Projects of type Class Libraries \line
5. Reference in VS.NET [References & xcopy Deployment ]\line \line Few disadvg :-\line ' Register prob/tension ...\line ' Version tension/prob ...\line ' Inheritance not supported easily ; cums at the cost of Performance .....\line \line Basically, C O M
\endash To allow Re-Use to extreme possible level !!!\line MDAC \endash [.NET framework ?] \endash Microsoft VB package & Development Wizard \endash this performs checking whether latest/previous version of tat DLL is already available\line \line
rem Remoting,AD,RH.... !@#$%\line \line ' 2 major concepts AD & RH ... ApplicationDomain & RuntimeHost ...\line ' AD \endash within a Process a logical process created by the OS .\line
' egs of RH ... ASP.NET,IE,Shell Executables ... all r Runtime Host eg.s !\line ' combo of AD & RH provides Security/Isolation/Segregate/Differentiate w.r.t Processes \line ' 2 Remoting protocols --- TCP[Soap;Binary] & HTTP[Soap] ....\line
' SOAP bulky/slow but not [m/c OS] dependent .....\line \line IMPT \line Each .net appcn needs the RH to Start it\line RH loads the Runtime[CLR] into a process\line Then creates the AD within the process\line Then loads the user code into the AD\line
\line Remoting v WebService :-\line ' Remoting => More Options / Flexibilty\line ' WebService => Fixed Protocols;WebService must be on a WebServer . \line ' 2 needfuls---> IP addr[4 bytes] & Port addr[2 bytes]\line
' eg. Of IP:Port ===== 172.16.10.1:8080 === com10:8080\line ' IP addr \{ [n/w id][host id] \} also-can-be 1-3,2-2,3-1 combo !\line \line ' IMPT Remoting is different form N/W progmg .....\line ' bcoz n/w pgmg[Socket Pgmg] is Tx/Rx fundas !\line
' while Remoting is Inter-Process-Communication ! \line \line Serializable means === can be xmitted into a data stream \line [File S , n/w S , Memory S]\line
' objts [which can be Serialized] Or r [inheriting ParentClass MarshalByRefObject] r REMOTABLE objts ....\line ' Also even here not all methods r Remotable........\line \line
Marshalling => Packaging up in 1 process p1 & then => Unpackaging the same in another process p2 ; so that\line A call across a Process Boundary can be successful \'85\'85..\line Marshalling (M) => behind-the-scenes Activity.\line M
acts as a framework tat converts the CHECK for/wrt 2-byte integer [VB,VB.NET] & 4-byte integer [VC++]\line \line ' RegisterChannel is a Shared Method ...\line
' w.r.t Channel That PortNo. which is Specified during decln is ServerChannel Else [i.e. when no port no. given during decln] \line its ClientChannel ...\line ' RemotingExample.HelloServer is a Client Object \line
' WellKnownObjectType is an enum vars --- 2 values - SingleCall;SingleTon \line ' SingleCall === new objt every time for each-of/all Client Calls\line ' SingleTon === Same objt for all Client Calls \line ' \line ' IMPT STEPS\line
' #1 write relevant codes Server/Client [Processes 1,2 \'85\'85 n] ....\line ' #2 Create a Channel\line ' #3 Register Channel\line ' #4 give the specfcns WKOT as sc or st ...\line ' #5 Create Client instance ...\line ' Now Remoting b/w Processes is Po
ssible !!!\line \line }{\b All SQL Server 2000
\par }{1 Which is the subset of SQL commands used to manipulate Oracle Database structures, including tables \line Data Definition Language (DDL) \line \line 2 Why does the following command give a compilation error \line DROP TABLE &TABLE_NAME;Varia
ble names should start with an alphabet. Here the table name starts with an '&' symbol.\line \line 3 Which system tables contain information on privileges granted and privileges obtained \line USER_TAB_PRIVS_MADE, USER_TAB_PRIVS_RECD\line \line
4 Which system table contains information on constraints on all the tables created \line USER_CONSTRAINTS\line \line 5 Which function is used to find the largest integer less than or equal to a specific value \line FLOOR\line \line
6 Which date function is used to find the difference between two dates \line MONTHS_BETWEEN\line \line 7 What will be the output of the following query \line
SELECT DECODE(TRANSLATE('A','1234567890','1111111111'), '1','YES', 'NO' );Answer :NOExplanation : The query checks whether a given string is a numerical digit.\line \line 8 What will be the output of the following query \line
SELECT REPLACE(TRANSLATE(LTRIM(RTRIM('!! ATHEN !!','!'), '!'), 'AN', '**'),'*','TROUBLE') FROM DUAL;TROUBLETHETROUBLE\line \line 9 What is the value of comm and sal after executing the following query if the initial value of 'sal' is 10000 \line
UPDATE EMP SET SAL = SAL + 1000, COMM = SAL*0.1;sal = 11000, comm = 1000\line \line 10 What is the use of the DROP option in the ALTER TABLE command \line It is used to drop constraints specified on the table.\line \line 11 What is the use of DESC in SQL
\line Answer :DESC has two purposes. It is used to describe a schema as well as to retrieve rows from table in descending order.Explanation : The query SELECT * FROM EMP ORDER BY ENAME DESC will display the output sorted on ENAME in descending order.
\line \line 12 What is the use of CASCADE CONSTRAINTS \line When this clause is used with the DROP command, a parent table can be dropped even when a child table exists. \line \line 13 What is the output of the following query \line
SELECT TRUNC(1234.5678,-2) FROM DUAL;1200\line \line 14 What is the difference between TRUNCATE and DELETE commands \line TRUNC
ATE is a DDL command whereas DELETE is a DML command. Hence DELETE operation can be rolled back, but TRUNCATE operation cannot be rolled back. WHERE clause can be used with DELETE and not with TRUNCATE.\line \line
15 What is the advantage of specifying WITH GRANT OPTION in the GRANT command \line The privilege receiver can further grant the privileges he/she has obtained from the owner to any other user.\line \line 16 What does the following query do \line
SELECT SAL + NVL(COMM,0) FROM EMP;This displays the total salary of all employees. The null values in the commission column will be replaced by 0 and added to salary.\line \line
17 What command is used to create a table by copying the structure of another table \line Answer :CREATE TABLE .. AS SELECT commandExplanation : To copy only the structure, t
he WHERE clause of the SELECT command should contain a FALSE statement as in the following.CREATE TABLE NEWTABLE AS SELECT * FROM EXISTINGTABLE WHERE 1=2;If the WHERE condition is true, then all the rows or rows satisfying the condition will be copied to
the new table.\line \line 18 Which command executes the contents of a specified file \line START or @ \line \line 19 Which command displays the SQL command in the SQL buffer, and then executes it \line RUN \line \line
20 What operator tests column for the absence of data \line IS NULL operator \line \line 21 What operator performs pattern matching \line LIKE operator \line \line 22 What is the parameter substitution symbol used with INSERT INTO command \line & \line
\line 23 What command is used to get back the privileges offered by the GRANT command \line REVOKE\line \line 24 What are the wildcards used for pattern matching \line _ for single character substitution and % for multi-character substitution \line \line
25 What are the privileges that can be granted on a table by a user to others \line Insert, update, delete, select, references, index, execute, alter, all \line \line 26 State true or false. EXISTS, SOME, ANY are operators in SQL. \line True \line \line
27 State true or false. !=, <>, ^= all denote the same operation. \line True \line \line 28 TRUNCATE TABLE EMP;DELETE FROM EMP;Will the outputs of the above two commands differ \line Both will result in deleting all the rows in the table EMP.\line
------------------------------------------------------\line }{\b INTERVIEW questions=}{\line \line ' Interview P.T.R s : All Relevant --------------------\line ' Qns All Relevant ---\line \line ' wats dynamic binding ?\line Ans.1\line \'b7
Write one code example for compile time binding and one for run time binding? What is early/late binding?\line
An object is early bound when it is assigned to a variable declared to be of a specific object type. Early bound objects allow the compiler to allocate memory and perform other optimizations before an application executes.\line
' Create a variable to hold a new object.\line Dim FS As FileStream\line ' Assign a new object to the variable.\line FS = New FileStream("C:\\tmp.txt", FileMode.Open)\line By contrast, an object is late bound when it is assigned to a var
iable declared to be of type Object. Objects of this type can hold references to any object, but lack many of the advantages of early-bound objects.\line Dim xlApp As Object\line xlApp = CreateObject("Excel.Application") \line \line
Since, a particular/same Request can be implemented thru Different calls/operations by different Objects, its Important to associate the request with the right object & 1 of its operations at Run-Time.[eg. Request tat of a Printer-call ]\line
This run-time association of request with different objects & their operations is called d.b. [.net feature]\line This concept offers the flexibility of NOT committing ur request to a particular objt/call/op implementation till run-time.\line
Early & Late Binding:\line --------------------- \line - Early binding is to know the type of an object at compile time. The\line compiler have all the needed element at compile time to build the call \line
into the excutable code (resolution of calls at compile time)\line - With late binding, the type of an object is known only at runtime. It \line will need extra instructions to find out where is the method to be \line
called (if it exists) before calling it (resolution of calls at runtime)\line ***\line Early binding is when the actual object behind the pointer is resolved at\line compile time.\line Late binding is when the actual object be
hind the pointer is resolved at run\line time.\line \line 58. Databinding is relating Set of Controls to Dataset table-columns directly !!!\line \line ' explain Delegate in .. context ?\line Ans.2\line It\rquote s a Type-Safe function pointer.\line
Delegates & Events go hand-in-hand.\line Structure of a delegate same as tat of a funcn.\line \line 4-step functioning/working ------\line Declare/Create [Write sub-code] for Delegate;\line Create instance of Delegate;\line
Use sub/funcn Reference stmt [to give addr. of the funcn-to-point-to];\line Use of invoke stmt to pass/give the value.\line 1. What is Event - Delegate? clear syntax for writing a event delegate\line
The event keyword lets you specify a delegate that will be called upon the occurrence of some "event" in your code. The delegate can have one or more associated methods that will be calle
d when your code indicates that the event has occurred. An event in one program can be made available to other programs that target the .NET Framework Common Language Runtime.\line // keyword_delegate.cs\line // delegate declaration\line
delegate void MyDelegate(int i);\line 2. class Program\line 3. \{\line 4. public static void Main()\line 5. \{\line 6. TakesADelegate(new MyDelegate(DelegateFunction));\line 7. \}\line 8. public static void TakesADelegate(MyDelegate SomeFunction)\line 9.
\{\line 10. SomeFunction(21);\line 11. \}\line 12. public static void DelegateFunction(int i)\line 13. \{\line 14. System.Console.WriteLine("Called by delegate with number: \{0\}.", i);\line 15. \}\line \}\line \line ' concepts of Assembly,Module .... ?
\line \line \'b7 Assemblies are the building blocks of .NET Framework applications; they form the fundamental unit of deployment, version control
, reuse, activation scoping, and security permissions. An assembly is a collection of types and resources that are built to work together and form a logical unit of functionality. An assembly provides the common language runtime with the information it ne
eds to be aware of type implementations. To the runtime, a type does not exist outside the context of an assembly.\line Assemblies are a fundamental part of programming with the .NET Framework. An assembly performs the following functions: \line
1. It contains code t
hat the common language runtime executes. Microsoft intermediate language (MSIL) code in a portable executable (PE) file will not be executed if it does not have an associated assembly manifest. Note that each assembly can have only one entry point (that
is, DllMain, WinMain, or Main). \line 2. It forms a security boundary. An assembly is the unit at which permissions are requested and granted. \line
3. It forms a type boundary. Every type's identity includes the name of the assembly in which it resides. A type called MyType loaded in the scope of one assembly is not the same as a type called MyType loaded in the scope of another assembly. \line
4. It forms a reference scope boundary. The assembly's manifest contains assembly metadata that is used for resolving types and s
atisfying resource requests. It specifies the types and resources that are exposed outside the assembly. The manifest also enumerates other assemblies on which it depends. \line
5. It forms a version boundary. The assembly is the smallest versionable unit in th
e common language runtime; all types and resources in the same assembly are versioned as a unit. The assembly's manifest describes the version dependencies you specify for any dependent assemblies. \line
6. It forms a deployment unit. When an application starts
, only the assemblies that the application initially calls must be present. Other assemblies, such as localization resources or assemblies containing utility classes, can be retrieved on demand. This allows applications to be kept simple and thin when fir
st downloaded. \line 7. It is the unit at which side-by-side execution is supported. \line
Assemblies can be static or dynamic. Static assemblies can include .NET Framework types (interfaces and classes), as well as resources for the assembly (bitmaps, JPEG files, re
source files, and so on). Static assemblies are stored on disk in PE files. You can also use the .NET Framework to create dynamic assemblies, which are run directly from memory and are not saved to disk before execution. You can save dynamic assemblies to
disk after they have executed.\line
There are several ways to create assemblies. You can use development tools, such as Visual Studio .NET, that you have used in the past to create .dll or .exe files. You can use tools provided in the .NET Framework SDK to crea
te assemblies with modules created in other development environments. You can also use common language runtime APIs, such as Reflection.Emit, to create dynamic assemblies. \line \'b7 What are the contents of assembly?\line
In general, a static assembly can consist of four elements: \line 1. The assembly manifest, which contains assembly metadata. \line 2. Type metadata. \line 3. Microsoft intermediate language (MSIL) code that implements the types. \line
4. A set of resources. \line \'b7 What are the different types of assemblies?\line Private, Public/Shared, Satellite \line \'b7 What is the difference between a private assembly and a shared assembly? \line
1. Location and visibility: A private assembly is normally used by a single application, and is stored in the application's directory, or a sub-directory beneath
. A shared assembly is normally stored in the global assembly cache, which is a repository of assemblies maintained by the .NET runtime. Shared assemblies are usually libraries of code which many applications will find useful, e.g. the .NET framework clas
ses.\line \line 2. }{\b Versioning}{: The runtime enforces versioning constraints only on shared assemblies, not on private assemblies. \line What are Satellite Assemblies? How you will create this? How will you get the different language strings? \line
Satellite assemblies are often
used to deploy language-specific resources for an application. These language-specific assemblies work in side-by-side execution because the application has a separate product ID for each language and installs satellite assemblies in a language-specific
s
ubdirectory for each language. When uninstalling, the application removes only the satellite assemblies associated with a given language and .NET Framework version. No core .NET Framework files are removed unless the last language for that .NET Framework
version is being removed.\line (For example, English and Japanese editions of the .NET Framework version 1.1 share the same core files. The Japanese .NET Framework version 1.1 adds satellite assemblies with localized resources in a \ja subdirectory. An application that supports the .NET Framework version 1.1, regardless of its language, always uses the same core runtime files.)\line http://www.ondotnet.com/lpt/a/2637\line \line Assembly => a software Output Unit;It\rquote
s a unit of Deployment & a unit of versioning.Assemblies contain MSIL code.\line Assemblies r Self-Describing. [metadata,manifest]\line
An assembly is the primary building block of a .NET Framework application. It is a collection of functionality that is built, versioned, and deployed as a single implementation unit (as one or
more files). All managed types and resources are marked either as accessible only within their implementation unit, or as accessible by code outside that unit. \line
.NET Assembly contains all the metadata about the modules, types, and other elements it contains in the form of a \'93manifest.\'94
The CLR loves assemblies because differing programming languages are just perfect for creating certain kinds of applications. For example, COBOL stands for Common Business-Oriented Language because it\rquote s tailor-made for creati
ng business apps. However, it\rquote s not much good for creating drafting programs. Regardless of what language you used to create your modules, they can all work together within one Portable Executable Assembly. \line There\rquote
s a hierarchy to the structure of .NET code. That hierarchy is \'93Assembly -> Module -> Type -> Method." \line
Assemblies can be static or dynamic. Static assemblies can include .NET Framework types (interfaces and classes), as well as resources for the assembly (bitmaps, JPEG files, resource files, and
so on). Static assemblies are stored on disk in portable executable (PE) files. You can also use the .NET Framework to create dynamic assemblies, which are run directly from memory and are not saved to disk before execution. You can save dynamic assemblie
s to disk after they have executed.\line Assemblies also allow Side-by-Side execution \endash 2 versions of same assembly being used @ same time.\line \line References ALWAYS contain names \endash
which r ASSEMBLY names of External Dependencies in ur Project.\line code-construct for Attribute [attribute for assembly]\line [Assembly: company name]\line [Assembly: configuration]\line \line Module ---\line
Module is a Class whose all members are static/shared.\line Modules r containers of Classes.\line \line ' UML - explain Uses,Extends .... ?\line ' UML - Multiplicity ... ?\line \lquote OOPs concept relating to Parent class,Child class & instances !\line
\line \lquote \rquote vsdisco files in Visual Studio ?? [ What for ???]\line Ans.6 \line all info bout Configuring the Web Service.\line \line \line Shared Assembly \endash GAC --- explain ?\line Ans.7 concept :- \line
. What is Global Assembly Cache (GAC) and what is the purpose of it? (How to make an assembly to public? Steps) How more than one version of an assembly can keep in same place?\line
Each computer where the common language runtime is installed has a machine-wide code cache called the global assembly ca
che. The global assembly cache stores assemblies specifically designated to be shared by several applications on the computer. You should share assemblies by installing them into the global assembly cache only when you need to.\line Steps\line
- Create a strong name using sn.exe tool\line eg: sn -k keyPair.snk\line - with in AssemblyInfo.cs add the generated file name \line eg: [assembly: AssemblyKeyFile("abc.snk")]\line - recompile project, then install it to GAC by either\line
drag & drop it to assembly folder (C:\\WINDOWS\\assembly OR C:\\WINNT\\assembly) (shfusion.dll tool)\line or\line gacutil -i abc.dll \line \line
only for .NET assemblies; when Assemblies r shared b/w 2 appcns thru a Cache called GAC !for this purpose, we register a Shared Assembly in the GAC & not in Windows Registry\line ###\line GAC => possible with
same name & different versions; then the identification is by the Strong Name.SN assembly is an assembly which has been encrypted with a pair [Public Key & Private Key]\line ###\line \line \lquote VSS Wat ? 3 main/code Options ???\line
Ans.8 VSS -> VisualSourceSafe\line 3 Options ---\line o Explicit\line o Strict\line o Compare [binary/text]\line \line vb.net --- Application Domain ???\line Ans.9 \line \'b7 }{\b What is Application Domain}{?\line
The primary purpose of the AppDomain is to isolate an application from other applications. Win32 processes provide isolation by having distin
ct memory address spaces. This is effective, but it is expensive and doesn't scale well. The .NET runtime enforces AppDomain isolation by keeping control over the use of memory - all memory in the AppDomain is managed by the .NET runtime, so the runtime c
an ensure that AppDomains do not access each other's memory.\line Objects in different application domains communicate either by transporting copies of objects across application domain boundaries, or by using a proxy to exchange messages.\line
MarshalByRefObject is
the base class for objects that communicate across application domain boundaries by exchanging messages using a proxy. Objects that do not inherit from MarshalByRefObject are implicitly marshal by value. When a remote application references a marshal by v
alue object, a copy of the object is passed across application domain boundaries.\line How does an AppDomain get created? \line
AppDomains are usually created by hosts. Examples of hosts are the Windows Shell, ASP.NET and IE. When you run a .NET application from the command-line, the host is the Shell. The Shell creates a new AppDomain for every application.\line
AppDomains can also be explicitly created by .NET applications. Here is a C# sample which creates an AppDomain, creates an instance of an object inside it, and th
en executes one of the object's methods. Note that you must name the executable 'appdomaintest.exe' for this code to work as-is.\line \'b7 using System;\line \'b7 using System.Runtime.Remoting;\line \'b7 \line \'b7
public class CAppDomainInfo : MarshalByRefObject\line \'b7 \{\line \'b7 public string GetAppDomainInfo()\line \'b7 \{\line \'b7 return "AppDomain = " + AppDomain.CurrentDomain.FriendlyName;\line \'b7 \}\line \'b7 \}\line \'b7 public class App\line \'b7
\{\line \'b7 public static int Main()\line \'b7 \{\line \'b7 AppDomain ad = AppDomain.CreateDomain( "Andy's new domain", null, null );\line \'b7 ObjectHandle oh = ad.CreateInstance( "appdomaintest", "CAppDomainInfo" );\line \'b7
CAppDomainInfo adInfo = (CAppDomainInfo)(oh.Unwrap());\line \'b7 string info = adInfo.GetAppDomainInfo();\line \'b7 Console.WriteLine( "AppDomain info: " + info );\line \'b7 return 0;\line \'b7 \}\line \}\line \line
i.e. pertaining to the Server [SQL Server2000, Oracle 8i, 9i]\line AD - logical process created by the OS; AD provides isolation & security w.r.t Processes.\line eg.s of Runtime Host --- asp.net,IE,Shell Executable.\line \line Application Domain :\line
--------------------\line The logical and physical boundary created around every .NET application \line by the Common Language Runtime (CLR). The CLR can allow multiple .NET \line applications to be run in a single process by loading them into separate
\line application domains. The CLR isolates each application domain from all \line other application domains and prevents the configuration, security, or \line stability of a running .NET applications from affecting other \line
applications. Objects can only be moved between application domains by the use \line of remoting. \line \line SAME is << CLR :: AppDomain >>\line App Domain provides Memory Isolation .\line \line SQL Triggers ?\line Ans.10\line \line
for controlling table-to-table activity !!!\line \line ODBC v OLEDB ? [ ODBC esp. for ]\line Ans.11\line OLEDB is most frequently used !\line \line Specifics ---\line ODBC - for DSN [Domain Server Name]; making any appcn which has Driver !\line OL
EDB - for RDBMS .\line \line Remoting - is it ------- \line [Distributed Appcns over n/w] OR\line [among Heterogenous OS] ???\line Ans.12\line }{\b \'b7 What is Remoting?}{ \line
The process of communication between different operating system processes, regardless of whether they are on the same comp
uter. The .NET remoting system is an architecture designed to simplify communication between objects living in different application domains, whether on the same computer or not, and between different contexts, whether in the same application domain or no
t. \line \line Remoting is Inter-Process communication/progmmg.Its different from Socket[n/w] progmmg i.e. Tx & Rx .Remoting - 2 protocols --- TCP & HTTP .\line so, it is " ".\line Remoting:\line ---------\line
A .NET technology that allows objects residing in different application \line domains to communicate. Objects in different application domains are \line said to be separated by a remoting boundary. Objects using remoting may \line
be on the same computer, or on different computers connected by a \line network. Remoting is the .NET replacement for DCOM. \line \line REMOTING :_ accessing anything on some other machine from your\line machine.\line \line }{\b \'b7
Difference between web services & remoting}{? \line ASP.NET Web Services .NET Remoting\line Protocol Can be accessed only over HTTP Can be accessed over any protocol (including TCP, HTTP, SMTP and so on)\line
State Management Web services work in a stateless environment Provide support for both stateful and stateless environments through Singleton and SingleCall objects\line Type System Web services support only the datatypes defined in the XSD type
system, limiting the number of objects that can be serialized. Using binary communication, .NET Remoting can provide support for rich type system\line
Interoperability Web services support interoperability across platforms, and are ideal for heterogeneous environments. .NET remoting requires the client be built using .NET, enforcing homogenous environment. \line
Reliability Highly reliable due to the fact that Web services are always hosted in IIS Can also take advantage of IIS for fault isolation. If IIS is not used, application needs to provide plumbing for ensuring the reliability of the application. \line
Extensibility Provides extensibility by allowing us to intercept the SOAP messages during the serialization and deserialization stages. Very extensible by allowing us to customize the different components of the .NET remoting framework. \line
Ease-of-Programming Easy-to-create and deploy. Complex to program. \line \line .asax mein kya kya primarily rehta hai [global .asax] ?\line Ans.13\line used to define Event Handlers - with application/session scope;\line
used to define Objects - with application/session scope.\line \line this file may contain :- event handlers...........\line application_start\line application_end\line session_start\line session_end\line application_beginrequest\line
application_endrequest\line \line Web.Config mein System Settings hota hai kya [present/possible] ???\line Session,State ???\line \line Ans.15\line
When a user requests a Page from ur Website, Session starts;each user on ur website is given a session.Session object is used to store info needed for a particular user-session.Variables persist for the entire user-session.\line
HTTP [stateless]:Web Server treats each http request for a page as an independent request.\line We can store values in the Session object;Info stored in the session object is available thruout the session & has session scope.\line \line
Dataset cant have Tables other than those of Database - True/False ?\line Ans.19\line Yes = True.\line \line Web Service mein kya kya type-of-Parameters pass ho sakte hain ?\line
3. What is a WebService and what is the underlying protocol used in it?Why Web Services?\line Web Service
s are applications delivered as a service on the Web. Web services allow for programmatic access of business logic over the Web. Web services typically rely on XML-based protocols, messages, and interface descriptions for communication and access. Web ser
vices are designed to be used by other programs or applications rather than directly by end user. Programs invoking a Web service are called clients. SOAP over HTTP is the most commonly used protocol for invoking Web services.\line
There are three main uses of Web services. \line
1. Application integration Web services within an intranet are commonly used to integrate business applications running on disparate platforms. For example, a .NET client running on Windows 2000 can easily invoke a Java Web service running on
a mainframe or Unix machine to retrieve data from a legacy application. \line
2. Business integration Web services allow trading partners to engage in e-business leveraging the existing Internet infrastructure. Organizations can send electronic purchase orders
to suppliers and receive electronic invoices. Doing e-business with Web services means a low barrier to entry because Web services can be added to existing applications running on any platform without changing legacy code. \line
3. Commercial Web services focu
s on selling content and business services to clients over the Internet similar to familiar Web pages. Unlike Web pages, commercial Web services target applications not humans as their direct users. Continental Airlines exposes flight schedules and status

Web services for travel Web sites and agencies to use in their applications. Like Web pages, commercial Web services are valuable only if they expose a valuable service or content. It would be very difficult to get customers to pay you for using a Web ser
v
ice that creates business charts with the customers? data. Customers would rather buy a charting component (e.g. COM or .NET component) and install it on the same machine as their application. On the other hand, it makes sense to sell real-time weather in
formation or stock quotes as a Web service. Technology can help you add value to your services and explore new markets, but ultimately customers pay for contents and/or business services, not for technology \line
4. Are Web Services a replacement for other distributed computing platforms?\line No. Web Services is just a new way of looking at existing implementation platforms. \line
5. In a Webservice, need to display 10 rows from a table. So DataReader or DataSet is best choice?\line A: WebService will support only DataSet. \line \line 1
Namespace --- 1 dll ? OR this associativity [ 1 to 1 w.r.t Namespace-dll associativity ] is not necessary ???\line Ans.21\line No, Not Necessary !!!\line \line 50 .}{\b Early & Late Binding:\line }{--------------------- \line - Early binding is t
o know the type of an object at compile time. The\line compiler have all the needed element at compile time to build the call \line into the excutable code (resolution of calls at compile time)\line
- With late binding, the type of an object is known only at runtime. It \line will need extra instructions to find out where is the method to be \line called (if it exists) before calling it (resolution of calls at runtime)\line ***\line
Early binding is when the actual object behind the pointer is resolved at\line compile time.\line Late binding is when the actual object behind the pointer is resolved at run time.\line \line U can also go to foll link for details n an example.\line
\line http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vbcn7/html/vaconEarlyLateBinding.asp\line \line }{\b 51. Application Domain :}{\line The logical and physical boundary created around every .NET application \line
by the Common Language Runtime (CLR). The CLR can allow multiple .NET \line applications to be run in a single process by loading them into separate \line application domains. The CLR isolates each application domain from all \line
other application domains and prevents the configuration, security, or \line stability of a running .NET applications from affecting other \line applications. Objects can only be moved between application domains by the use \line of remoting. \line \line
SAME is << CLR :: AppDomain >>\line App Domain provides Memory Isolation .\line U can also go to foll link for details n an example.\line http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguide/html/cpconapplicationdomainhosts.asp\line
Process: \line --------\line A process, in the simplest terms, is a running application. A thread is \line the basic unit to which the operating system allocates processor time for a process. \line \line
A process is started by the Operating System to run any program on the\line computer.\line When you run Notepad, internally, Windows starts a process for the same.\line }{\b 52.Remoting:\line }{
A .NET technology that allows objects residing in different application \line domains to communicate. Objects in different application domains are \line said to be separated by a remoting boundary. Objects using remoting may \line
be on the same computer, or on different computers connected by a \line network. Remoting is the .NET replacement for DCOM. \line \line REMOTING :_ accessing anything on some other machine from your\line machine.\line \line 53. The difference }{\b
between typed data set and untyped dataset}{:-\line The difference between the two lies in the fact that a Typed DataSet\line has a schema and an Untyped DataSet does not have one. It should be\line noted that the Typed Datasets have more support in Visua
l studio.\line \line A typed dataset gives us easier access to the contents of the table\line through strongly typed programming that uses information from the\line underlying data schema. A typed DataSet has a reference to an XML\line schema file:\line
Dim s As String\line s = dsCustomersOrders1.Customers(0).CustomerID\line \line In contrast, if we are working with an untyped DataSet, the\line equivalent code looks like this:\line Dim s As String\line
s = _ CType(dsCustomersOrders1.Tables("Customers").Rows(0).Item\line ("CustomerID"), String)\line \line As the syntax is much simpler and more practical, using typed\line Datasets is much more handy.\line
<< Typed DataSet :- when the full structure gets copied using normal ado.net commands ;\line Untyped DataSet :- Only getting data into dataset ; \line \line i.e. w.r.t typed dataset-working; we know Field \endash
Type ; we can use .separated & the Type automatically appears \'85\'85\'85.. >>\line \line 55. asp.net \endash Post Back is the same as Refresh functionally !!! \line \line 56. For Classes : Multiple Inheritance is NOT possible ;\line \line
for Interfaces however; Yes its Allowed/possible !!!\line \line 57. For Shadowing-purpose ; its OK if in the Base Class; we don\rquote t write keyword : Overridable [MUST WRITE for Overriding-purpose] \line \line 26.Wats an Abstract Class ?
Wats an Interface ?\line \line 59. Interface [vb.net] cant have default implementation !\line \'b7 In which Scenario you will go for Interface or Abstract Class?\line
Interfaces, like classes, define a set of properties, methods, and events. But unlike classes, interfaces do not provide implementation. They are implemented by classes, and defined as separate entities from class
es. Even though class inheritance allows your classes to inherit implementation from a base class, it also forces you to make most of your design decisions when the class is first published.\line
Abstract classes are useful when creating components because they
allow you specify an invariant level of functionality in some methods, but leave the implementation of other methods until a specific implementation of that class is needed. They also version well, because if additional functionality is needed in derived
classes, it can be added to the base class without breaking code. \line Interfaces vs. Abstract Classes\line Feature Interface Abstract class\line Multiple inheritance A class may implement several interfaces. A class may extend only one abstract class.
\line Default implementation An interface cannot provide any code at all, much less default code. An abstract class can provide complete code, default code, and/or just stubs that have to be overridden.\line
Constants Static final constants only, can use them without qualification i
n classes that implement the interface. On the other paw, these unqualified names pollute the namespace. You can use them and it is not obvious where they are coming from since the qualification is optional. Both instance and static constants are possible
. Both static and instance intialiser code are also possible to compute the constants.\line
Third party convenience An interface implementation may be added to any existing third party class. A third party class must be rewritten to extend only from the abstract class.\line
is-a vs -able or can-do Interfaces are often used to describe the peripheral abilities of a class, not its central identity, e.g. an Automobile class might implement the Recyclable interface, which could apply to many otherwise totally unrelated ob
jects. An abstract class defines the core identity of its descendants. If you defined a Dog abstract class then Damamation descendants are Dogs, they are not merely dogable. Implemented interfaces enumerate the general things a class can do, not the thing
s a class is. \line
Plug-in You can write a new replacement module for an interface that contains not one stick of code in common with the existing implementations. When you implement the interface, you start from scratch without any default implementation. You
have to obtain your tools from other classes; nothing comes with the interface other than a few constants. This gives you freedom to implement a radically different internal design. You must use the abstract class as-is for the code base, with all its att
e
ndant baggage, good or bad. The abstract class author has imposed structure on you. Depending on the cleverness of the author of the abstract class, this may be good or bad. Another issue that's important is what I call "heterogeneous vs. homogeneous." If

implementors/subclasses are homogeneous, tend towards an abstract base class. If they are heterogeneous, use an interface. (Now all I have to do is come up with a good definition of hetero/homogeneous in this context.) If the various objects are all of-a-
kind, and share a common state and behavior, then tend towards a common base class. If all they share is a set of method signatures, then tend towards an interface.\line
Homogeneity If all the various implementations share is the method signatures, then an interface works best. If the various implementations are all of a kind and share a common status and behavior, usually an abstract class works best.\line
Maintenance If your client code talks only in terms of an interface, you can easily change the concrete implemen
tation behind it, using a factory method. Just like an interface, if your client code talks only in terms of an abstract class, you can easily change the concrete implementation behind it, using a factory method.\line
Speed Slow, requires extra indirection to find the corresponding method in the actual class. Modern JVMs are discovering ways to reduce this speed penalty. Fast\line
Terseness The constant declarations in an interface are all presumed public static final, so you may leave that part out. You can't call a
ny methods to compute the initial values of your constants. You need not declare individual methods of an interface abstract. They are all presumed so. You can put shared code into an abstract class, where you cannot into an interface. If interfaces want
to share code, you will have to write other bubblegum to arrange that. You may use methods to compute the initial values of your constants and variables, both instance and static. You must declare all the individual methods of an abstract class abstract.
\line Ad
ding functionality If you add a new method to an interface, you must track down all implementations of that interface in the universe and provide them with a concrete implementation of that method. If you add a new method to an abstract class, you have th
e option of providing a default implementation of it. Then all existing code will continue to work without change.\line \line 60. default Access Modifier for Vars/Method is Friend NOT public !!!\line 61. OOPS 4th feature \endash
Abstraction --- Modelling --- concentrate on Modelling details !\line ??????????\line \line 62. BCL \endash base class Library !\line 63. CLS is a Subset of CTS ! L->T ; L & T\line 64. ASP.net \endash session params/attributes :- \line In Process ?
\line State Server\line SQL Server\line \line 65. vb.net < method/sub declrn > ; OPTIONAL keyword is the last parameter Written\line 66. Clone [vb.net object] ; Does it create a Shallow copy or Deep copy ?? \endash creates Shallow copy !\line
67. Databinding is relating Set of Controls to Dataset table-columns directly !!!\line \line 68. Wats Ad Hoc querying ???\line \line It simply means AAA querying => Anywhere, Anytime Anyhow sql-querying !!!!!!!\line \line 69. XML-document Class \endash
create/return an xml node objt ::::\line Create < node ; Attribute ; Element > ; which one ????\line 70. Strong name assembly \endash tool --- is it sn.exe ??\line \line You should share assemblies by installing t
hem into the global assembly cache only when you need to.\line Steps\line - Create a strong name using sn.exe tool\line eg: sn -k keyPair.snk\line - with in AssemblyInfo.cs add the generated file name \line eg: [assembly: AssemblyKeyFile("abc.snk")]\line
- recompile project, then install it to GAC by either\line drag & drop it to assembly folder (C:\\WINDOWS\\assembly OR C:\\WINNT\\assembly) (shfusion.dll tool)\line or\line gacutil -i abc.dll \line \line 71. use from & back to COM-version :-\line \line
**** to expose .net cmpt as a COM cmpt ::: ****\line \line there must be @ least 1 public zero-argument constructor\line \line Types cant be abstract\line \line All members must be Public n non-Static [subs,Vars,Properties etc. ]}{\f1\fs20
\par }}

{\rtf1\ansi\ansicpg1252\uc1 \deff0\deflang1033\deflangfe1033{\fonttbl{\f0\froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f1\fswiss\fcharset0\fprq2{\*\panose 020b0604020202020204}Arial;}
{\f2\fmodern\fcharset0\fprq1{\*\panose 02070309020205020404}Courier New;}{\f3\froman\fcharset2\fprq2{\*\panose 05050102010706020507}Symbol;}{\f79\froman\fcharset238\fprq2 Times New Roman CE;}{\f80\froman\fcharset204\fprq2 Times New Roman Cyr;}
{\f82\froman\fcharset161\fprq2 Times New Roman Greek;}{\f83\froman\fcharset162\fprq2 Times New Roman Tur;}{\f84\froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\f85\froman\fcharset178\fprq2 Times New Roman (Arabic);}
{\f86\froman\fcharset186\fprq2 Times New Roman Baltic;}{\f87\fswiss\fcharset238\fprq2 Arial CE;}{\f88\fswiss\fcharset204\fprq2 Arial Cyr;}{\f90\fswiss\fcharset161\fprq2 Arial Greek;}{\f91\fswiss\fcharset162\fprq2 Arial Tur;}
{\f92\fswiss\fcharset177\fprq2 Arial (Hebrew);}{\f93\fswiss\fcharset178\fprq2 Arial (Arabic);}{\f94\fswiss\fcharset186\fprq2 Arial Baltic;}{\f95\fmodern\fcharset238\fprq1 Courier New CE;}{\f96\fmodern\fcharset204\fprq1 Courier New Cyr;}
{\f98\fmodern\fcharset161\fprq1 Courier New Greek;}{\f99\fmodern\fcharset162\fprq1 Courier New Tur;}{\f100\fmodern\fcharset177\fprq1 Courier New (Hebrew);}{\f101\fmodern\fcharset178\fprq1 Courier New (Arabic);}
{\f102\fmodern\fcharset186\fprq1 Courier New Baltic;}}{\colortbl;\red0\green0\blue0;\red0\green0\blue255;\red0\green255\blue255;\red0\green255\blue0;\red255\green0\blue255;\red255\green0\blue0;\red255\green255\blue0;\red255\green255\blue255;
\red0\green0\blue128;\red0\green128\blue128;\red0\green128\blue0;\red128\green0\blue128;\red128\green0\blue0;\red128\green128\blue0;\red128\green128\blue128;\red192\green192\blue192;}{\stylesheet{
\ql \li0\ri0\widctlpar\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \snext0 Normal;}{\*\cs10 \additive Default Paragraph Font;}}{\*\listtable{\list\listtemplateid467183270\listsimple{\listlevel
\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat0\levelspace0\levelindent0{\leveltext\'01*;}{\levelnumbers;}\chbrdr\brdrnone\brdrcf1 \chshdng0\chcfpat1\chcbpat1 }{\listname ;}\listid-2}}{\*\listoverridetable{\listoverride\listid-2
\listoverridecount1{\lfolevel\listoverrideformat{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat0\levelold\levelspace0\levelindent360{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\f3\chbrdr\brdrnone\brdrcf1
\chshdng0\chcfpat1\chcbpat1\fbias0 }}\ls1}}{\info{\author Administrator}{\operator Administrator}{\creatim\yr2005\mo9\dy21\hr12\min57}{\revtim\yr2005\mo9\dy22\hr11}{\version27}{\edmins15}{\nofpages8}{\nofwords2370}{\nofchars13509}
{\*\company MCN Solutions}{\nofcharsws16590}{\vern8247}}\margl1008\margr1296\margt1152\margb1152 \widowctrl\ftnbj\aenddoc\noxlattoyen\expshrtn\noultrlspc\dntblnsbdb\nospaceforul\hyphcaps0\horzdoc\dghspace120\dgvspace120\dghorigin1701\dgvorigin1984
\dghshow0\dgvshow3\jcompress\viewkind4\viewscale100\nolnhtadjtbl \fet0\sectd \linex0\sectdefaultcl {\*\pnseclvl1\pnucrm\pnstart1\pnindent720\pnhang{\pntxta .}}{\*\pnseclvl2\pnucltr\pnstart1\pnindent720\pnhang{\pntxta .}}{\*\pnseclvl3
\pndec\pnstart1\pnindent720\pnhang{\pntxta .}}{\*\pnseclvl4\pnlcltr\pnstart1\pnindent720\pnhang{\pntxta )}}{\*\pnseclvl5\pndec\pnstart1\pnindent720\pnhang{\pntxtb (}{\pntxta )}}{\*\pnseclvl6\pnlcltr\pnstart1\pnindent720\pnhang{\pntxtb (}{\pntxta )}}
{\*\pnseclvl7\pnlcrm\pnstart1\pnindent720\pnhang{\pntxtb (}{\pntxta )}}{\*\pnseclvl8\pnlcltr\pnstart1\pnindent720\pnhang{\pntxtb (}{\pntxta )}}{\*\pnseclvl9\pnlcrm\pnstart1\pnindent720\pnhang{\pntxtb (}{\pntxta )}}\pard\plain
\ql \fi-360\li720\ri0\sb100\sa100\nowidctlpar\tx720\faauto\rin0\lin720\itap0 \fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\b When was ASP.NET released?}{
\par }\pard \ql \li720\ri0\sb100\sa100\nowidctlpar\faauto\rin0\lin720\itap0 {ASP.NET is a part of the .NET framework, which was released as a software platform in 2002.
\par }\pard \ql \fi-360\li720\ri0\sb100\sa100\nowidctlpar\tx720\faauto\rin0\lin720\itap0 {\b Is a new version coming up?}{
\par }\pard \ql \li720\ri0\sb100\sa100\nowidctlpar\faauto\rin0\lin720\itap0 {ASP.NET 2.0, Visual Studio 2005 (Whidbey), Visual Web Developer 2005 Express Edition
are the next releases of Microsoft's Web platform and tools. They have already been released as Beta versions. They are scheduled to be released in the week of November 7, 2005.
\par }\pard \ql \fi-360\li720\ri0\sb100\sa100\nowidctlpar\tx720\faauto\rin0\lin720\itap0 {\b Explain Namespace.}{
\par }\pard \ql \li720\ri0\sb100\sa100\nowidctlpar\faauto\rin0\lin720\itap0 {Namespaces are logical groupings of names used within a program. There may be multiple namespaces in a single application code, grouped based on the identifiers\rquote
use. The name of any given identifier must appear only once in its namespace.
\par }\pard \ql \fi-360\li720\ri0\sb100\sa100\nowidctlpar\tx720\faauto\rin0\lin720\itap0 {\b List the types of Authentication supported by ASP.NET.}{
\par {\pntext\pard\plain\f3 \loch\af3\dbch\af0\hich\f3 \'b7\tab}}\pard \ql \fi-360\li1440\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlblt\ilvl0\ls1\pnrnot0\pnf3\pnindent360 {\pntxtb \'b7}}\faauto\ls1\rin0\lin1440\itap0 {Windows (default)
\par {\pntext\pard\plain\f3 \loch\af3\dbch\af0\hich\f3 \'b7\tab}}\pard \ql \fi-360\li1440\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlblt\ilvl0\ls1\pnrnot0\pnf3\pnindent360 {\pntxtb \'b7}}\faauto\ls1\rin0\lin1440\itap0 {Forms
\par {\pntext\pard\plain\f3 \loch\af3\dbch\af0\hich\f3 \'b7\tab}}\pard \ql \fi-360\li1440\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlblt\ilvl0\ls1\pnrnot0\pnf3\pnindent360 {\pntxtb \'b7}}\faauto\ls1\rin0\lin1440\itap0 {Passport
\par {\pntext\pard\plain\f3 \loch\af3\dbch\af0\hich\f3 \'b7\tab}}\pard \ql \fi-360\li1440\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlblt\ilvl0\ls1\pnrnot0\pnf3\pnindent360 {\pntxtb \'b7}}\faauto\ls1\rin0\lin1440\itap0 {None (Security disabled)
\par }\pard \ql \fi-360\li720\ri0\sb100\sa100\nowidctlpar\tx720{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {\b\fs20 What is CLR?}{\fs20
\par }\pard \ql \li720\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {
Common Language Runtime (CLR) is a run-time environment that manages the execution of .NET code and provides services like memory management, debugging, security, etc. The CLR is also known as Virtual Execution System (VES).
\par }\pard \ql \fi-360\li720\ri0\sb100\sa100\nowidctlpar\tx720{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {\b\fs20 What is CLI?}{\fs20
\par }\pard \ql \li720\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {
The CLI is a set of specifications for a runtime environment, including a common type system, base class library, and a machine-independent intermediate code known as the Common Intermediate Language (CIL). (Source: Wikipedia.)
\par }\pard \ql \fi-360\li720\ri0\sb100\sa100\nowidctlpar\tx720{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {\b\fs22 List the various stages of Page-Load lifecycle.}{\fs22
\par {\pntext\pard\plain\f3\fs20 \loch\af3\dbch\af0\hich\f3 \'b7\tab}}\pard \ql \fi-360\li1440\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlblt\ilvl0\ls1\pnrnot0\pnf3\pnindent360 {\pntxtb \'b7}}\faauto\ls1\rin0\lin1440\itap0 {\f2\fs20 Init()}{
\par {\pntext\pard\plain\f3\fs20 \loch\af3\dbch\af0\hich\f3 \'b7\tab}}\pard \ql \fi-360\li1440\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlblt\ilvl0\ls1\pnrnot0\pnf3\pnindent360 {\pntxtb \'b7}}\faauto\ls1\rin0\lin1440\itap0 {\f2\fs20 Load()}{
\par {\pntext\pard\plain\f3\fs20 \loch\af3\dbch\af0\hich\f3 \'b7\tab}}\pard \ql \fi-360\li1440\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlblt\ilvl0\ls1\pnrnot0\pnf3\pnindent360 {\pntxtb \'b7}}\faauto\ls1\rin0\lin1440\itap0 {\f2\fs20 PreRender()}{
\par {\pntext\pard\plain\f3\fs20 \loch\af3\dbch\af0\hich\f3 \'b7\tab}}\pard \ql \fi-360\li1440\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlblt\ilvl0\ls1\pnrnot0\pnf3\pnindent360 {\pntxtb \'b7}}\faauto\ls1\rin0\lin1440\itap0 {\f2\fs20 Unload()}{
\par }\pard \ql \fi-360\li720\ri0\sb100\sa100\nowidctlpar\tx720{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {\b\fs20 Explain Assembly and Manifest.}{\fs20
\par }\pard \ql \li720\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {
An assembly is a collection of one or more files and one of them (DLL or EXE) contains a special metadata called Assembly Manifest. The manifest is stored as binary data and contains details like versioning requirements for the assembly, the author, secur
ity permissions, and list of files forming the assembly. An assembly is created whenever a DLL is built. The manifest can be viewed programmatically by making use of classes from the }{\f2\fs20 System.Reflection}{
namespace. The tool Intermediate Language Disassembler (ILDASM) can be used for this purpose. It can be launched from the command prompt or via Start> Run.
\par }\pard \ql \fi-360\li720\ri0\sb100\sa100\nowidctlpar\tx720{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {\b What is Shadow Copy?}{
\par }\pard \ql \li720\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {In order to replace a COM component on a live web server, it was necessary to stop the entire website, copy the new files and then res
tart the website. This is not feasible for the web servers that need to be always running. .NET components are different. They can be overwritten at any time using a mechanism called Shadow Copy. It prevents the Portable Executable (PE) files like DLLs an
d
EXEs from being locked. Whenever new versions of the PEs are released, they are automatically detected by the CLR and the changed components will be automatically loaded. They will be used to process all new requests not currently executing, while the ol
der version still runs the currently executing requests. By bleeding out the older version, the update is completed.
\par }\pard \ql \fi-360\li720\ri0\sb100\sa100\nowidctlpar\tx720{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {\b What is DLL Hell?}{
\par }\pard \ql \li720\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {DLL hell is the problem that occurs when an installation of a newer application might break or hinder other applications
as newer DLLs are copied into the system and the older applications do not support or are not compatible with them. .NET overcomes this problem by supporting multiple versions of an assembly at any given time. This is also called side-by-side component ve
rsioning.
\par }\pard \ql \fi-360\li720\ri0\sb100\sa100\nowidctlpar\tx720{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {\b Explain Web Services.}{
\par }\pard \ql \li720\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {
Web services are programmable business logic components that provide access to functionality through the Internet. Standard protocols like HTTP can be used to access them. Web services are based on the Simple Object Access P
rotocol (SOAP), which is an application of XML. Web services are given the }{\i .asmx}{ extension.
\par }\pard \ql \fi-360\li720\ri0\sb100\sa100\nowidctlpar\tx720{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {\b Explain Windows Forms.}{
\par }\pard \ql \li720\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {Windows Forms is employed for developing Windows GUI applications. It is a class library that gives developers access to Windows Common Cont
rols with rich functionality. It is a common GUI library for all the languages supported by the .NET Framework.
\par }\pard \ql \fi-360\li720\ri0\sb100\sa100\nowidctlpar\tx720{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {\b What is Postback?}{
\par }\pard \ql \li720\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {When an action occurs (like button click), the page containing all the controls within the <FORM... > tag performs an HTTP PO
ST, while having itself as the target URL. This is called Postback.
\par }\pard \ql \fi-360\li720\ri0\sb100\sa100\nowidctlpar\tx720{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {\b Explain the differences between server-side and client-side code?}{
\par }\pard \ql \li720\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {Server side scripting means that all the script will be executed by the server and interpreted as needed. Client side scr
ipting means that the script will be executed immediately in the browser such as form field validation, clock, email validation, etc. Client side scripting is usually done in VBScript or JavaScript. Since the code is included in the HTML page, anyone can
see the code by viewing the page source. It also poses as a possible security hazard for the client computer.
\par }\pard \ql \fi-360\li720\ri0\sb100\sa100\nowidctlpar\tx720{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {\b Enumerate the types of Directives.}{
\par {\pntext\pard\plain\f3 \loch\af3\dbch\af0\hich\f3 \'b7\tab}}\pard \ql \fi-360\li1440\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlblt\ilvl0\ls1\pnrnot0\pnf3\pnindent360 {\pntxtb \'b7}}\faauto\ls1\rin0\lin1440\itap0 {@ Page directive
\par {\pntext\pard\plain\f3 \loch\af3\dbch\af0\hich\f3 \'b7\tab}}\pard \ql \fi-360\li1440\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlblt\ilvl0\ls1\pnrnot0\pnf3\pnindent360 {\pntxtb \'b7}}\faauto\ls1\rin0\lin1440\itap0 {@ Import directive
\par {\pntext\pard\plain\f3 \loch\af3\dbch\af0\hich\f3 \'b7\tab}}\pard \ql \fi-360\li1440\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlblt\ilvl0\ls1\pnrnot0\pnf3\pnindent360 {\pntxtb \'b7}}\faauto\ls1\rin0\lin1440\itap0 {@ Implements directive
\par {\pntext\pard\plain\f3 \loch\af3\dbch\af0\hich\f3 \'b7\tab}}\pard \ql \fi-360\li1440\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlblt\ilvl0\ls1\pnrnot0\pnf3\pnindent360 {\pntxtb \'b7}}\faauto\ls1\rin0\lin1440\itap0 {@ Register directive
\par {\pntext\pard\plain\f3 \loch\af3\dbch\af0\hich\f3 \'b7\tab}}\pard \ql \fi-360\li1440\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlblt\ilvl0\ls1\pnrnot0\pnf3\pnindent360 {\pntxtb \'b7}}\faauto\ls1\rin0\lin1440\itap0 {@ Assembly directive
\par {\pntext\pard\plain\f3 \loch\af3\dbch\af0\hich\f3 \'b7\tab}}\pard \ql \fi-360\li1440\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlblt\ilvl0\ls1\pnrnot0\pnf3\pnindent360 {\pntxtb \'b7}}\faauto\ls1\rin0\lin1440\itap0 {@ OutputCache directive
\par {\pntext\pard\plain\f3 \loch\af3\dbch\af0\hich\f3 \'b7\tab}}\pard \ql \fi-360\li1440\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlblt\ilvl0\ls1\pnrnot0\pnf3\pnindent360 {\pntxtb \'b7}}\faauto\ls1\rin0\lin1440\itap0 {@ Reference directive
\par }\pard \ql \fi-360\li720\ri0\sb100\sa100\nowidctlpar\tx720{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {\b What is Code-Behind?}{
\par }\pard \ql \li720\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {
Code-Behind is a concept where the contents of a page are in one file and the server-side code is in another. This allows different people to work on the same p
age at the same time and also allows either part of the page to be easily redesigned, with no changes required in the other. An Inherits attribute is added to the @ Page directive to specify the location of the Code-Behind file to the ASP.NET page.
\par }\pard \ql \fi-360\li720\ri0\sb100\sa100\nowidctlpar\tx720{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {\b Describe the difference between inline and code behind.}{
\par }\pard \ql \li720\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {
Inline code is written along side the HTML in a page. There is no separate distinction between design code and logic code. Code-behind is code written in a separate file and referenced by the }{\i .aspx}{ page.
\par }\pard \ql \fi-360\li720\ri0\sb100\sa100\nowidctlpar\tx720{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {\b List the ASP.NET validation controls?}{
\par {\pntext\pard\plain\f3\fs20 \loch\af3\dbch\af0\hich\f3 \'b7\tab}}\pard \ql \fi-360\li1440\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlblt\ilvl0\ls1\pnrnot0\pnf3\pnindent360 {\pntxtb \'b7}}\faauto\ls1\rin0\lin1440\itap0 {\f2\fs20 RequiredFieldValidator}{

\par {\pntext\pard\plain\f3\fs20 \loch\af3\dbch\af0\hich\f3 \'b7\tab}}\pard \ql \fi-360\li1440\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlblt\ilvl0\ls1\pnrnot0\pnf3\pnindent360 {\pntxtb \'b7}}\faauto\ls1\rin0\lin1440\itap0 {\f2\fs20 RangeValidator}{
\par {\pntext\pard\plain\f3\fs20 \loch\af3\dbch\af0\hich\f3 \'b7\tab}}\pard \ql \fi-360\li1440\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlblt\ilvl0\ls1\pnrnot0\pnf3\pnindent360 {\pntxtb \'b7}}\faauto\ls1\rin0\lin1440\itap0 {\f2\fs20 CompareValidator}{
\par {\pntext\pard\plain\f3\fs20 \loch\af3\dbch\af0\hich\f3 \'b7\tab}}\pard \ql \fi-360\li1440\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlblt\ilvl0\ls1\pnrnot0\pnf3\pnindent360 {\pntxtb \'b7}}\faauto\ls1\rin0\lin1440\itap0 {\f2\fs20 RegularExpressionValidator}{

\par {\pntext\pard\plain\f3\fs20 \loch\af3\dbch\af0\hich\f3 \'b7\tab}}\pard \ql \fi-360\li1440\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlblt\ilvl0\ls1\pnrnot0\pnf3\pnindent360 {\pntxtb \'b7}}\faauto\ls1\rin0\lin1440\itap0 {\f2\fs20 CustomValidator}{
\par {\pntext\pard\plain\f3\fs20 \loch\af3\dbch\af0\hich\f3 \'b7\tab}}\pard \ql \fi-360\li1440\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlblt\ilvl0\ls1\pnrnot0\pnf3\pnindent360 {\pntxtb \'b7}}\faauto\ls1\rin0\lin1440\itap0 {\f2\fs20 ValidationSummary}{
\par }\pard \ql \fi-360\li720\ri0\sb100\sa100\nowidctlpar\tx720{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {\b What is Data Binding?}{
\par }\pard \ql \li720\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {Data binding is a way used to connect values from a collection of data (e.g. }{\f2\fs20 DataSet}{
) to the controls on a web form. The values from the dataset are automatically displayed in the controls without having to write separate code to display them.
\par }\pard \ql \fi-360\li720\ri0\sb100\sa100\nowidctlpar\tx720{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {\b Describe Paging in ASP.NET.}{
\par }\pard \ql \li720\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {The }{\f2\fs20 DataGrid}{ control in ASP.NET enables easy paging of the data. The }{\f2\fs20 AllowPaging}{ property of the }{\f2\fs20
DataGrid}{ can be set to }{\f2\fs20 True}{ to perform paging. ASP.NET automatically performs paging and provides the hyperlinks to the other pages in different styles, based on the property that has been set for }{\f2\fs20 PagerStyle.Mode}{.
\par }\pard \ql \fi-360\li720\ri0\sb100\sa100\nowidctlpar\tx720{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {\b Should user input data validation occur server-side or client-side? Why?}{
\par }\pard \ql \li720\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {
All user input data validation should occur on the server and minimally on the client-side, though it is a good way to reduce server load and network traffic because we ca
n ensure that only data of the appropriate type is submitted from the form. It is totally insecure. The user can view the code used for validation and create a workaround for it. Secondly, the URL of the page that handles the data is freely visible in the

original form page. This will allow unscrupulous users to send data from their own forms to your application. Client-side validation can sometimes be performed where deemed appropriate and feasible to provide a richer, more responsive experience for the u
ser.
\par }\pard \ql \fi-360\li720\ri0\sb100\sa100\nowidctlpar\tx720{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {\b What is the difference between Server.Transfer and Response.Redirect?}{
\par {\pntext\pard\plain\f3\fs20 \loch\af3\dbch\af0\hich\f3 \'b7\tab}}\pard \ql \fi-360\li1440\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlblt\ilvl0\ls1\pnrnot0\pnf3\pnindent360 {\pntxtb \'b7}}\faauto\ls1\rin0\lin1440\itap0 {\b\f2\fs20 Response.Redirect}{
: This tells the browser that the requested page can be found at a new location. The browser then initiates another request to the new page loading its contents in the browser. This results in two requests by the browser.
\par {\pntext\pard\plain\f3\fs20 \loch\af3\dbch\af0\hich\f3 \'b7\tab}}\pard \ql \fi-360\li1440\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlblt\ilvl0\ls1\pnrnot0\pnf3\pnindent360 {\pntxtb \'b7}}\faauto\ls1\rin0\lin1440\itap0 {\b\f2\fs20 Server.Transfer}{
: It transfers execution from the first page to the second page on the server. As far as the browser client is concerned, it made one request and the initial pag
e is the one responding with content. The benefit of this approach is one less round trip to the server from the client browser. Also, any posted form variables and query string parameters are available to the second page as well.
\par }\pard \ql \fi-360\li720\ri0\sb100\sa100\nowidctlpar\tx720{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {\b What is an interface and what is an abstract class?}{
\par }\pard \ql \li720\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {
In an interface, all methods must be abstract (must not be defined). In an abstract class, some methods can be defined. In an interface, no accessibility modifiers are allowed, whereas it is allowed in abstract classes.
\par }\pard \ql \fi-360\li720\ri0\sb100\sa100\nowidctlpar\tx720{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {\b Session state vs. View state:}{
\par }\pard \ql \li720\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {
In some cases, using view state is not feasible. The alternative for view state is session state. Session state is employed under the following situations:
\par {\pntext\pard\plain\f3 \loch\af3\dbch\af0\hich\f3 \'b7\tab}}\pard \ql \fi-360\li1440\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlblt\ilvl0\ls1\pnrnot0\pnf3\pnindent360 {\pntxtb \'b7}}\faauto\ls1\rin0\lin1440\itap0 {
Large amounts of data - View state tends to increase the size of both the HTML page sent to the browser and the size of form posted back. Hence session state is used.
\par {\pntext\pard\plain\f3 \loch\af3\dbch\af0\hich\f3 \'b7\tab}}\pard \ql \fi-360\li1440\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlblt\ilvl0\ls1\pnrnot0\pnf3\pnindent360 {\pntxtb \'b7}}\faauto\ls1\rin0\lin1440\itap0 {
Secure data - Though the view state data is encoded and may be encrypted, it is better and secure if no sensitive data is sent to the client. Thus, session state is a more secure option.
\par {\pntext\pard\plain\f3 \loch\af3\dbch\af0\hich\f3 \'b7\tab}}\pard \ql \fi-360\li1440\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlblt\ilvl0\ls1\pnrnot0\pnf3\pnindent360 {\pntxtb \'b7}}\faauto\ls1\rin0\lin1440\itap0 {
Problems in serializing of objects into view state - View state is efficient for a small set of data. Other types like }{\f2\fs20 DataSet}{ are slower and can generate a very large view state.
\par }\pard \ql \fi-360\li720\ri0\sb100\sa100\nowidctlpar\tx720{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {\b Can two different programming languages be mixed in a single ASPX file?}{
\par }\pard \ql \li720\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {ASP.NET\rquote
s built-in parsers are used to remove code from ASPX files and create temporary files. Each parser understands only one language. Therefore mixing of languages in a single ASPX file is not possible.
\par }\pard \ql \fi-360\li720\ri0\sb100\sa100\nowidctlpar\tx720{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {\b Is it possible to see the code that ASP.NET generates from an ASPX file?}{
\par }\pard \ql \li720\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {By enabling debugging using a <%@ Page Debug="true" %> directive in the ASPX file or a <compilation debug="true"> statement in }{\i
Web.config}{, the generated code can be viewed. The code is stored in a CS or VB file (usually in the }{\i \\%SystemRoot%\\Microsoft.NET\\Framework\\v1.0.nnnn\\Temporary ASP.NET Files}{).
\par }\pard \ql \fi-360\li720\ri0\sb100\sa100\nowidctlpar\tx720{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {\b Can a custom .NET data type be used in a Web form?}{
\par }\pard \ql \li720\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {This can be achieved by placing the DLL containing the custom data type in the application root's }{\i bin}{
directory and ASP.NET will automatically load the DLL when the type is referenced.
\par }\pard \ql \fi-360\li720\ri0\sb100\sa100\nowidctlpar\tx720{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {\b List the event handlers that can be included in Global.asax?}{
\par {\pntext\pard\plain\f3 \loch\af3\dbch\af0\hich\f3 \'b7\tab}}\pard \ql \fi-360\li1440\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlblt\ilvl0\ls1\pnrnot0\pnf3\pnindent360 {\pntxtb \'b7}}\faauto\ls1\rin0\lin1440\itap0 {Application start and end event handlers

\par {\pntext\pard\plain\f3 \loch\af3\dbch\af0\hich\f3 \'b7\tab}}\pard \ql \fi-360\li1440\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlblt\ilvl0\ls1\pnrnot0\pnf3\pnindent360 {\pntxtb \'b7}}\faauto\ls1\rin0\lin1440\itap0 {Session start and end event handlers
\par {\pntext\pard\plain\f3 \loch\af3\dbch\af0\hich\f3 \'b7\tab}}\pard \ql \fi-360\li1440\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlblt\ilvl0\ls1\pnrnot0\pnf3\pnindent360 {\pntxtb \'b7}}\faauto\ls1\rin0\lin1440\itap0 {Per-request event handlers
\par {\pntext\pard\plain\f3 \loch\af3\dbch\af0\hich\f3 \'b7\tab}}\pard \ql \fi-360\li1440\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlblt\ilvl0\ls1\pnrnot0\pnf3\pnindent360 {\pntxtb \'b7}}\faauto\ls1\rin0\lin1440\itap0 {Non-deterministic event handlers
\par }\pard \ql \fi-360\li720\ri0\sb100\sa100\nowidctlpar\tx720{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {\b Can the view state be protected from tampering?}{
\par }\pard \ql \li720\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {
This can be achieved by including an @ Page directive with an EnableViewStateMac="true" attribute in each ASPX file that has to be protected. Another way is to include the <pages enableViewStateMac="true" /> statement in the }{\i Web.config}{ file.
\par }\pard \ql \fi-360\li720\ri0\sb100\sa100\nowidctlpar\tx720{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {\b Can the view state be encrypted?}{
\par }\pard \ql \li720\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {The view state can be encrypted by setting }{\f2\fs20 EnableViewStateMac}{ to true and either modifying the }{\f2\fs20 <machineKey>}{
element in }{\i Machine.config}{ to <machineKey validation="3DES\'94 /> or by adding the above statement to }{\i Web.config}{.
\par }\pard \ql \fi-360\li720\ri0\sb100\sa100\nowidctlpar\tx720{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {\b When during the page processing cycle is ViewState available?}{
\par }\pard \ql \li720\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {The view state is available after the }{\f2\fs20 Init()}{ and before the }{\f2\fs20 Render()}{ methods are called during Page load.
\par }\pard \ql \fi-360\li720\ri0\sb100\sa100\nowidctlpar\tx720{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {\b Do Web controls support Cascading Style Sheets?}{
\par }\pard \ql \li720\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {All Web controls inherit a property named }{\f2\fs20 CssClass}{ from the base class }{\f2\fs20 System.Web.UI.WebControls.WebControl}{
which can be used to control the properties of the web control.
\par }\pard \ql \fi-360\li720\ri0\sb100\sa100\nowidctlpar\tx720{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {\b\fs22 What namespaces are imported by default in ASPX files?}{\fs22
\par }\pard \ql \li720\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin720\itap0 {The following namespaces are imported by default. Other namespaces must be imported manually using @ Import directives.
\par {\pntext\pard\plain\f3\fs20 \loch\af3\dbch\af0\hich\f3 \'b7\tab}}\pard \ql \fi-360\li1440\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlblt\ilvl0\ls1\pnrnot0\pnf3\pnindent360 {\pntxtb \'b7}}\faauto\ls1\rin0\lin1440\itap0 {\f2\fs20 System}{
\par {\pntext\pard\plain\f3\fs20 \loch\af3\dbch\af0\hich\f3 \'b7\tab}}\pard \ql \fi-360\li1440\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlblt\ilvl0\ls1\pnrnot0\pnf3\pnindent360 {\pntxtb \'b7}}\faauto\ls1\rin0\lin1440\itap0 {\f2\fs20 System.Collections}{
\par {\pntext\pard\plain\f3\fs20 \loch\af3\dbch\af0\hich\f3 \'b7\tab}}\pard \ql \fi-360\li1440\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlblt\ilvl0\ls1\pnrnot0\pnf3\pnindent360 {\pntxtb \'b7}}\faauto\ls1\rin0\lin1440\itap0 {\f2\fs20 System.Collections.Specialized
}{
\par {\pntext\pard\plain\f3\fs20 \loch\af3\dbch\af0\hich\f3 \'b7\tab}}\pard \ql \fi-360\li1440\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlblt\ilvl0\ls1\pnrnot0\pnf3\pnindent360 {\pntxtb \'b7}}\faauto\ls1\rin0\lin1440\itap0 {\f2\fs20 System.Configuration}{
\par {\pntext\pard\plain\f3\fs20 \loch\af3\dbch\af0\hich\f3 \'b7\tab}}\pard \ql \fi-360\li1440\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlblt\ilvl0\ls1\pnrnot0\pnf3\pnindent360 {\pntxtb \'b7}}\faauto\ls1\rin0\lin1440\itap0 {\f2\fs20 System.Text}{
\par {\pntext\pard\plain\f3\fs20 \loch\af3\dbch\af0\hich\f3 \'b7\tab}}\pard \ql \fi-360\li1440\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlblt\ilvl0\ls1\pnrnot0\pnf3\pnindent360 {\pntxtb \'b7}}\faauto\ls1\rin0\lin1440\itap0 {\f2\fs20 System.Text.RegularExpressions
}{
\par {\pntext\pard\plain\f3\fs20 \loch\af3\dbch\af0\hich\f3 \'b7\tab}}\pard \ql \fi-360\li1440\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlblt\ilvl0\ls1\pnrnot0\pnf3\pnindent360 {\pntxtb \'b7}}\faauto\ls1\rin0\lin1440\itap0 {\f2\fs20 System.Web}{
\par {\pntext\pard\plain\f3\fs20 \loch\af3\dbch\af0\hich\f3 \'b7\tab}}\pard \ql \fi-360\li1440\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlblt\ilvl0\ls1\pnrnot0\pnf3\pnindent360 {\pntxtb \'b7}}\faauto\ls1\rin0\lin1440\itap0 {\f2\fs20 System.Web.Caching}{
\par {\pntext\pard\plain\f3\fs20 \loch\af3\dbch\af0\hich\f3 \'b7\tab}}\pard \ql \fi-360\li1440\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlblt\ilvl0\ls1\pnrnot0\pnf3\pnindent360 {\pntxtb \'b7}}\faauto\ls1\rin0\lin1440\itap0 {\f2\fs20 System.Web.Security}{
\par {\pntext\pard\plain\f3\fs20 \loch\af3\dbch\af0\hich\f3 \'b7\tab}}\pard \ql \fi-360\li1440\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlblt\ilvl0\ls1\pnrnot0\pnf3\pnindent360 {\pntxtb \'b7}}\faauto\ls1\rin0\lin1440\itap0 {\f2\fs20 System.Web.SessionState}{

\par {\pntext\pard\plain\f3\fs20 \loch\af3\dbch\af0\hich\f3 \'b7\tab}}\pard \ql \fi-360\li1440\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlblt\ilvl0\ls1\pnrnot0\pnf3\pnindent360 {\pntxtb \'b7}}\faauto\ls1\rin0\lin1440\itap0 {\f2\fs20 System.Web.UI}{
\par {\pntext\pard\plain\f3\fs20 \loch\af3\dbch\af0\hich\f3 \'b7\tab}}\pard \ql \fi-360\li1440\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlblt\ilvl0\ls1\pnrnot0\pnf3\pnindent360 {\pntxtb \'b7}}\faauto\ls1\rin0\lin1440\itap0 {\f2\fs20 System.Web.UI.HtmlControls}{

\par {\pntext\pard\plain\f3\fs20 \loch\af3\dbch\af0\hich\f3 \'b7\tab}}\pard \ql \fi-360\li1440\ri0\sb100\sa100\nowidctlpar{\*\pn \pnlvlblt\ilvl0\ls1\pnrnot0\pnf3\pnindent360 {\pntxtb \'b7}}\faauto\ls1\rin0\lin1440\itap0 {\f2\fs20 System.Web.UI.WebControls}{

\par }\pard \ql \fi-360\li720\ri0\sb100\sa100\nowidctlpar\tx720\faauto\rin0\lin720\itap0 {\b What classes are needed to send e-mail from an ASP.NET application?}{
\par }\pard \ql \li720\ri0\sb100\sa100\nowidctlpar\faauto\rin0\lin720\itap0 {The classes }{\f2\fs20 MailMessage}{ and }{\f2\fs20 SmtpMail}{ have to be used to send email from an ASP.NET application. }{\f2\fs20 MailMessage}{ and }{\f2\fs20 SmtpMail}{
are classes defined in the .NET Framework Class Library's }{\f2\fs20 System.Web.Mail}{ namespace.
\par }\pard \ql \fi-360\li720\ri0\sb100\sa100\nowidctlpar\tx720\faauto\rin0\lin720\itap0 {\b\fs20 Why do some web service classes derive from System.Web.WebServices while others do not?}{\fs20
\par }\pard \ql \li720\ri0\sb100\sa100\nowidctlpar\faauto\rin0\lin720\itap0 {Those Web Service classes which employ objects like }{\f2\fs20 Application}{, }{\f2\fs20 Session}{, }{\f2\fs20 Context}{, }{\f2\fs20 Server}{, and }{\f2\fs20 User}{
have to derive from }{\f2\fs20 System.Web.WebServices}{. If it does not use these objects, it is not necessary to be derived from it.
\par }\pard \ql \fi-360\li720\ri0\sb100\sa100\nowidctlpar\tx720\faauto\rin0\lin720\itap0 {\b\fs20 What are VSDISCO files?}{\fs20
\par }\pard \ql \li720\ri0\sb100\sa100\nowidctlpar\faauto\rin0\lin720\itap0 {VSDISCO files are DISCO files that enable dynamic discovery of Web
Services. ASP.NET links the VSDISCO to a HTTP handler that scans the host directory and subdirectories for ASMX and DISCO files and returns a dynamically generated DISCO document. A client who requests a VSDISCO file gets back what appears to be a static
DISCO document.
\par }\pard \ql \fi-360\li720\ri0\sb100\sa100\nowidctlpar\tx720\faauto\rin0\lin720\itap0 {\b\fs20 How can files be uploaded to Web pages in ASP.NET?}{\fs20
\par }\pard \ql \li720\ri0\sb100\sa100\nowidctlpar\faauto\rin0\lin720\itap0 {This can be done by using the }{\f2\fs20 HtmlInputFile}{
class to declare an instance of an <input type="file" runat="server"/> tag. Then, a byte[] can be declared to read in the data from the input file. This can then be sent to the server.
\par }\pard \ql \fi-360\li720\ri0\sb100\sa100\nowidctlpar\tx720\faauto\rin0\lin720\itap0 {\b How do I create an ASPX page that periodically refreshes itself?}{
\par }\pard \ql \li720\ri0\sb100\sa100\nowidctlpar\faauto\rin0\lin720\itap0 {The following META tag can be used as a trigger to automatically refresh the page every n seconds:
\par }\pard \ql \li720\ri0\nowidctlpar\tx0\tx959\tx1918\tx2877\tx3836\tx4795\tx5754\tx6713\tx7672\tx8631\faauto\rin0\lin720\itap0 {\f2\fs20 <meta http-equiv="Refresh" content="nn">
\par }\pard \ql \fi-360\li720\ri0\sb100\sa100\nowidctlpar\tx720\faauto\rin0\lin720\itap0 {\b\fs20 How do I initialize a TextBox whose TextMode is "password", with a password?}{\fs20
\par }\pard \ql \li720\ri0\sb100\sa100\nowidctlpar\faauto\rin0\lin720\itap0 {The }{\f2\fs20 TextBox}{\rquote s }{\f2\fs20 Text}{ property cannot be used to assign a value to a password field. Instead, its }{\f2\fs20 Value}{ field can be used for that purpose.

\par }\pard \ql \li720\ri0\nowidctlpar\tx0\tx959\tx1918\tx2877\tx3836\tx4795\tx5754\tx6713\tx7672\tx8631\faauto\rin0\lin720\itap0 {\f2\fs20 <asp:TextBox Value="imbatman" TextMode="Password"
\par ID="Password" RunAt="server" />
\par }\pard \ql \fi-360\li720\ri0\sb100\sa100\nowidctlpar\tx720\faauto\rin0\lin720\itap0 {\b\fs20 Why does the control's PostedFile property always show null when using HtmlInputFile}{\b control to upload files to a Web server?}{
\par }\pard \ql \li720\ri0\sb100\sa100\nowidctlpar\faauto\rin0\lin720\itap0 {This occurs when an enctype="multipart/form-data" attribute is missing in the <form> tag.
\par }\pard \ql \fi-360\li720\ri0\sb100\sa100\nowidctlpar\tx720\faauto\rin0\lin720\itap0 {\b How can the focus be set to a specific control when a Web form loads?}{
\par }\pard \ql \li720\ri0\sb100\sa100\nowidctlpar\faauto\rin0\lin720\itap0 {This can be achieved by using client-side script:
\par }\pard \ql \li720\ri0\nowidctlpar\tx0\tx959\tx1918\tx2877\tx3836\tx4795\tx5754\tx6713\tx7672\tx8631\faauto\rin0\lin720\itap0 {\f2\fs20 document.forms[0].TextBox1.focus ()
\par }\pard \ql \li720\ri0\sb100\sa100\nowidctlpar\faauto\rin0\lin720\itap0 {The above code will set the focus to a }{\f2\fs20 TextBox}{ named }{\f2\fs20 TextBox1}{ when the page loads.
\par }\pard \ql \fi-360\li720\ri0\sb100\sa100\nowidctlpar\tx720\faauto\rin0\lin720\itap0 {\b\fs20 How does System.Web.UI.Page's IsPostBack property work?}{\fs20
\par }\pard \ql \li720\ri0\sb100\sa100\nowidctlpar\faauto\rin0\lin720\itap0 {\f2\fs20 IsPostBack}{ checks to see whether the HTTP request is accompanied by postback data containing a }{\f2\fs20 __VIEWSTATE}{ or }{\f2\fs20 __EVENTTARGET}{
parameter. If there are none, then it is not a postback.
\par }\pard \ql \fi-360\li720\ri0\sb100\sa100\nowidctlpar\tx720\faauto\rin0\lin720\itap0 {\b\fs20 What is WSDL?}{\fs20
\par }\pard \ql \li720\ri0\sb100\sa100\nowidctlpar\faauto\rin0\lin720\itap0 {WSD
L is an XML format for describing network services as a set of endpoints operating on messages containing either document-oriented or procedure-oriented information. The operations and messages are described abstractly, and then bound to a concrete networ
k protocol and message format to define an endpoint. Related concrete endpoints are combined into abstract endpoints (services). (Source: }{\ul\cf2 www.w3.org <http://www.w3.org>}{)
\par }\pard \ql \fi-360\li720\ri0\sb100\sa100\nowidctlpar\tx720\faauto\rin0\lin720\itap0 {\b\fs20 What is UDDI?}{\fs20
\par }\pard \ql \li720\ri0\sb100\sa100\nowidctlpar\faauto\rin0\lin720\itap0 {UDDI stands for Universal Description, Discovery, and Integration. It is
like an "Yellow Pages" for Web Services. It is maintained by Microsoft, IBM, and Ariba, and is designed to provide detailed information regarding registered Web Services for all vendors. The UDDI can be queried for specific Web Services.
\par }\pard \ql \fi-360\li720\ri0\sb100\sa100\nowidctlpar\tx720\faauto\rin0\lin720\itap0 {\b Is it possible to generate the source code for an ASP.NET Web service from a WSDL?}{
\par }\pard \ql \li720\ri0\sb100\sa100\nowidctlpar\faauto\rin0\lin720\itap0 {The }{\i Wsdl.exe}{ tool (.NET Framework SDK) can be used to generate source code for an ASP.NET web service with its WSDL link.
\par Example: }{\i wsdl /server http://api.google.com/GoogleSearch.wsdl}{.
\par }\pard \ql \fi-360\li720\ri0\sb100\sa100\nowidctlpar\tx720\faauto\rin0\lin720\itap0 {\b\fs20 Why do uploads fail while using an ASP.NET file upload control to upload large files?}{\fs20
\par }\pard \ql \li720\ri0\sb100\sa100\nowidctlpar\faauto\rin0\lin720\itap0 {ASP.NET limits the size of file uploads for security purposes. The default size is 4 MB. This can be changed by modifying the }{\f2\fs20 maxRequestLength}{ attribute of }{\i
Machine.config}{'s }{\f2\fs20 <httpRuntime>}{ element.
\par }\pard \ql \fi-360\li720\ri0\sb100\sa100\nowidctlpar\tx720\faauto\rin0\lin720\itap0 {\b\fs20 Describe the difference between inline and code behind.}{\fs20
\par }\pard \ql \li720\ri0\sb100\sa100\nowidctlpar\faauto\rin0\lin720\itap0 {Inline code is written along side the HTML in a page. Code-behind is code written in a separate file and referenced by the }{\i .aspx}{ page.
\par }\pard \ql \li0\ri0\sb100\sa100\keepn\nowidctlpar\faauto\rin0\lin0\itap0 {\b\fs36
\par }\pard \ql \li0\ri0\nowidctlpar\faauto\rin0\lin0\itap0 {\f1\fs20
\par }}

Answers for above questions:
1. How security is implemented in asp.net

ASP.NET implement security in three ways

a- Forms-based security
in this case you set the IIS authentication system to anonymous access to enable the ASP.NET to validate authentication itself by checking if the user name & Password is equivalent to the same info which is stored anyhow (XML, Database, ...)

b- Windows-based security: according to this option any user access the site must have a registered windows account and a dedicated permissions

Passport-based security:
this is a centric authentication service in which one login could auto authenticate the user for many sites where is no need to store the user names & passwords into each site

2) In my website for eg. it has around 100 aspx. In that I want 20 aspx files should be available to the users only if they are logged in. How can I achieve this with web.config file.

all what you have to do is to creat a folder then move your required files into it then configur the web.config as follows :
<system.web>
<authentication mode="Windows" />
</system.web>
<location path="myFolder"> // or you can write your pages names instead of folder name
<system.web>
<authorization>
<deny users="?"/>
</authorization>
</system.web>
</location>

3.What do you meant by default view
it is the auto generated default view of the table in the dataset , when dealing with any table in a dataset, .NET makes a view of that table to can communicate with it so it is the default one
4.Difference between stored procedure and stored functions
they all do the same functions except the stored functions can return a table and can be implemented into a select statement like " select myFunction(someParam)"

5) I have a file called a.aspx which has some textboxes. I want to post the values to b.aspx without using response.redirect. How can I do this.
You can use session variables to store this a.aspx textBoxs Like session ["myVar"]=TextBox1.Txt

6). Different between datagrid and datalist
the datagrid is designed to show a table-like data to the user but the datalist is designed to show a row-like data

Explain ADO.Net Architecture

1. In your .NET application, you use a DataSet object containing a single DataTable object named Customers. The Customers DataTable has all the rows and columns from the Customers table in your database. You would like to bind only selected columns from the Customers table to a DataGrid control. You want a solution that requires minimum programming, and you want to have minimum impact on the functionality and performance of other applications accessing the same SQL Server database. How should you proceed?

2. XmlSerializer class is used for
3. What is SIngle Sign-On ?
4. What is Static and Dynamic Assemblies.?
5. I have a class in C# (the project type is Class Library) Class clsA { // i am having two functions. void f1() { /* do some coding here */ } void F1() { /* do some coding here */ } } // end of class After making this class i Compiled it and got the Dll. Now i have created/opened any project in VB.NET and refrenced dll in this project as Dim obj as new CSharpPro.ClsA So when i write obj.f1() ?? What will happen

6. If one web form inherits the another web form, the drived web form able to access base class
7. Technically,to whom we bind the any controls?
8. You create English, French, and German versions of your ASP.NET application. You have separate resource files for each language version. You need to deploy the appropriate resource file based on the language settings of the server. What should you do?
9. You create an ASP.NET page that uses images to identify areas where a user can click to initiate actions. The users of the application use Internet Explorer. You want to provide a pop-up window when the user moves the mouse pointer over an image. You want the pop-up window to display text that identifies the action that will be taken if the user clicks the image. What should you do?
10. You create an ASP.NET application that contains confidential information. You use form-based authentication to validate users. You need to prevent unauthenticated users from accessing the application. What should you do?
11. Dataset in ad.net can contain how many tables (we all know that dataset can contain many tables but is there any limit or not...and if yes than how many tables... )

12. In ASP.NET, which two properties are present on every validation control
13. You are creating an ASP.NET application for your company Techno Inc. Techno Inc data is stored in a Microsoft SQL Server 6.5 database. Your application generates accounting summary reports based on transaction tables that contain million of rows. You want your application to return each summary report as quickly as possible. You need to configure your application to connect to the database and retrieve the data in a way that achieves this goal. What should you do?

14. You are creating an ASP.NET application that uses the Microsoft SQL Server .NET Data Provider to connect to Techno Inc's database. Your database administrator reports that, due to heavy usage of the application, data requests are being blocked while users wait for new connections to be created. You want to improve throughput by setting a minimum connection pool size of 10.What should you do?
15. You are creating an ASP.NET application for Gsoft. Customers will use the application to file claim forms online. You plan to deploy the application over multiple servers. You want to save session state information to optimize performance. What are two possible ways to achieve this goal?

16. You are creating an ASP.NET page for Techno Inc. The page uses string concatenation to gather data from multiple e-mail messages and format the data for display on the page. You want to ensure that the page displays as quickly as possible. What should you do?

Which of these tasks requires you to use imperative security rather than declarative security?
In your .NET application, you use a DataSet object containing a single DataTable object named Customers. The Customers DataTable has all the rows and columns from the Customers table in your database. You would like to bind only selected columns from the Customers table to a DataGrid control. You want a solution that requires minimum programming, and you want to have minimum impact on the functionality and performance of other applications accessing the same SQL Server database. How should you proceed?

In which of these situations should you use tlbimp, the Type Library Importer tool? (Select two.)

XmlSerializer class is used for

From which one of the following locations does the garbage collector remove objects?

What is SIngle SIgn-On ?

What is Static and Dynamic Assemblies.?

I have a class in C# (the project type is Class Library) Class clsA { // i am having two functions. void f1() { /* do some coding here */ } void F1() { /* do some coding here */ } } // end of class After making this class i Compiled it and got the Dll. Now i have created/opened any project in VB.NET and refrenced dll in this project as Dim obj as new CSharpPro.ClsA So when i write obj.f1() ?? What will happen

What is the difference between Response.Write() & Response.Output.Write()

If one web form inherits the another web form, the drived web form able to access base class ....

Technically,to whom we bind the any controls?

You create English, French, and German versions of your ASP.NET application. You have separate resource files for each language version. You need to deploy the appropriate resource file based on the language settings of the server. What should you do?

You create an ASP.NET page that uses images to identify areas where a user can click to initiate actions. The users of the application use Internet Explorer. You want to provide a pop-up window when the user moves the mouse pointer over an image. You want the pop-up window to display text that identifies the action that will be taken if the user clicks the image. What should you do?

You create an ASP.NET application that contains confidential information. You use form-based authentication to validate users. You need to prevent unauthenticated users from accessing the application. What should you do?

Dataset in ad.net can contain how many tables..

In ASP.NET, which two properties are present on every validation control

You are creating an ASP.NET application for your company Techno Inc. Techno Inc data is stored in a Microsoft SQL Server 6.5 database. Your application generates accounting summary reports based on transaction tables that contain million of rows. You want your application to return each summary report as quickly as possible. You need to configure your application to connect to the database and retrieve the data in a way that achieves this goal. What should you do?
You are creating an ASP.NET application that uses the Microsoft SQL Server .NET Data Provider to connect to Techno Inc's database. Your database administrator reports that, due to heavy usage of the application, data requests are being blocked while users wait for new connections to be created. You want to improve throughput by setting a minimum connection pool size of 10.What should you do?

You are creating an ASP.NET application for Gsoft. Customers will use the application to file claim forms online. You plan to deploy the application over multiple servers. You want to save session state information to optimize performance. What are two possible ways to achieve this goal?

You are creating an ASP.NET page for Techno Inc. The page uses string concatenation to gather data from multiple e-mail messages and format the data for display on the page. You want to ensure that the page displays as quickly as possible. What should you do?

Your ASP.NET application manages order entry data by using a DataSet object named TKorderEntry. The TKorderEntry object includes two DataTable objects named orderNames and OrderDetails. A ForeignKeyConstraint object named orderDetailsKey is defined between the two DataTable objects. You attempt to delete a row in orderNames while there are related rows in OrderDetails, and an exception is generated.
What is the most likely cause of the problem?

Which of the following controls contribute the highest Requests per second

What is the difference between Response.Write() and Response.Ouput.Write()?

User Control is nothing but

Each ASP.NET Page is Parsed and Compiled into a class that extends

You create an assembly to access data in a relational database. This assembly will be used by several ASP.NET applications on your Web server. You need to ensure that all your applications can access the assembly. Which two actions should you take?

You are creating an ASP.NET application. The application will be deployed on your company’s intranet. Your company uses Microsoft Windows authentication. You want the application to run in the security context of the user. What should you do?

What is a PostAway Webform in ASP.NET?

What is the syntax to explicitly kill a user’s session?

While creating the applications for manipulating XML (i.e.consider XML file), what are the classes NOT needed for developing the application.

What is the most important method to override when creating a rendered control?

What is the most important method to override when creating a composite custom control?

Which ASP.NET authentication mode is best suited to identifying and authorizing users who belong to a corporate network?
Your ASP.NET application manages order entry data by using a DataSet object named OrderEntry. The OrderEntry object includes two datatable objects named OrderNames and OrderDetails. A ForeignKeyConstraint object named OrderDetailsKey is defined between the two DataTable objects. You Attempt to delete a row in OrderNames while there are related rows in OrderDetails, and an exception is generated. What is the most likely cause of the problem?

You are a member of a team of developers creating several ASP.NET applications for your company.You want to create a resuabletoolbar that will be used in each of the applications. The toolbar will be displayed at the top of each page viewed by the user. The content of toolbar will vary depending on options each user selects when creating a profile. You want to be able to add the toolbar to the ASP.NET toolbox for each of the developers on your team. What should you do?

How do u get the Dropdown List control in the Data Grid Columns?(In the Editing mode)

XYZ company creates English, French, and German versions of its flagship ASP.NET application. They have separate resource files for each language version. Applications needs to be deployed using the appropriate resource file based on the language settings of the server. What should be done?

An ASP.NET application for an online stock trading company called XYZ is created. Application is required to allow customers to transfer funds between accounts. The code component is written in Visual Basic .NET to handle transfers of founds. This component is used by the page named TkFundsTransfer.aspx. For unit testing, you add the following code segment to the TkTransferFunds method of your component. (Line numbers are included for reference only.) 1 Dim ctx As HttpContext 2 ctx =HttpContext.Current 3 ctx.Trace.Write("Founds transfer requested.") You want to be able to view the trace output on the TkFundsTransfer.aspx page. What should you do?

An ASP.NET application is created for online research services that displays research results to users.Datagrid control is used to display a list of research questions and number of responses recieved for each question.You want to modify the control so that the total no of responses recieved is displayed in footer of the grid.You want to perform this task with minimum amount to developement effort. What should you do?
Channels must be registered before objects are registered
Clients can communicate with a remote object using any registered channel. who is responsible for calling ChannelServices.RegisterChannel() before attempting to communicate?

Remote objects share but do not own channels.

During channel configuration, what can we do if we are not sure about whether a port is available?

How do we register a channel that listens on specific port more than once?

How do we register a channel that listens on apecific port more than once?

When a client calls a method on a remote object, the parameters as well as other details related to the call are transported to the remote object through

If we are consuming a remotable object's functionality , we can register channels with the remoting infrastructure by

Channels designed to listen for a particular protocol on a particular port implement:

A class becomes a component when it conforms to a standard for component interaction. This standard is provided through what interface

IChannel interface provides which of the following informational properties

How to view datagrid pages randomly?

Name the event that fires the script needed for updating the data in the datagrid? (ASP.NET)

What do the Advertisement file contains in the AdRotator component (ASP.NET)?

What is UDDI stands for?

WebRequest class is derived from HttpWebRequest Class found in System.Web. - True or False

what is the current problem for asp.net email object with .net framework?Means is there facility in asp.net for validate smtp mail servers?

We can only send emails using System.Web.Mail.SMTP class, not to receive mails. - True or False

What is the default authentication method for IIS?

What is the name of the default javascript file which validates the web forms when we use validation controls ?

While switching from one page to another which of the following method allow you to pass additional information?

The name of the hidden field to maintain control state between client requests in ASP.NET page is

What is the name of DLL that translate from xml to sql in IIS.

Suppose you wanted to enable debugging support in an ASCX file. Which Statement should be at the top of the file

A character in C# is an
We are developing an ASP.NET Web application with two projects. The main project will contain all of the application code and Web pages. The other project will contain only localized resources that contain French translations. We want the neutral culture for the entire application to be set to English. Which of the following assembly attributes can be added to the AssemblyInfo.cs file of the main project to accomplish this?
When we want to direct all ASP.NET compilation errors to a custom page so that Web site users aren't exposed to the details of our application. Which of the following should we use?

An ASP.NET Web application have been developed that supports caching. Specifically, we use output caching for all user controls. Each user control is loaded by calling the LoadControl method of the Page class. We want to debug one of the pages that contain a user control before the user control has been cached. What exactly should we examine in a Watch window to discover property values of the loaded user control?

An ASP.NET Web application have been developed that supports caching. Specifically, we use output caching for all user controls. Each user control is loaded by calling the LoadControl method of the Page class. We want to debug one of the pages that contain a user control before the user control has been cached. What exactly should we examine in a Watch window to discover property values of the loaded user control?

An ASP.NET Web application is developed ,that uses a Calendar control on one of its pages. Users have complained that after selecting several dates on the control, they have to click the Back button in the browser multiple times before they are directed to a previous page. What is the solution of this problem?

In Writing an ASP.NET Web application that uses a SQL Server 2000 database to store software bugs. You want the database to be automatically created on the target machine when the ASP.NET application is deployed. You decide to create a Setup project to solve this problem. What two things can you do to your Setup project, ASP.NET Web application project, or both, that will allow you to accomplish this? (Choose two. Each answer presents part of the complete solution.)
What is the name of the JavaScript function generated by ASP.NET's Page.RegisterClientScriptBlock method?
Which one of the following is NOT a valid state management tool?
How many maximum number of cookies are allowed to your site.
Which DataSource object assigned to the data Web control's DataSource property ?
Which of the following data source is the forward only connection to the result set.
Which control provides no visible interface elements.
Which class is used to execute the SQL statement or stored procedure against a data source.
which of the following method of the command class returns an integer value. That indicates the number of rows effected by the query.
By default, when does validation automatically occur?
A relationship within a DataSet is represented by which one of the following?
What is the command line utility used to create a proxy class for a Web Service?
What type of processing model does ASP.NET simulate?
Once ASP.NET automatically parses and compiles the global.asax file into a dynamic .NET Framework class, which base class is extended?
Which property of the AdRotator control points to the file with the information required to work?

<% Application.Lock() Application("counter") = CType(Application("counter") + 1, Int32) Application.UnLock() %> <% Application.Lock(); Application("counter") = Int32(Application("counter") + 1); Application.UnLock(); %> What is WRONG with the code in the sample above?

What is the difference between output cache and ASP.NET data cache?

Your ASP.NET application resides in the virtual directory called "MyStore." The parent web directory has a web.config file. Your application has no web.config file in it. The Mode attribute of the CustomErrors tag in the parent web.config file is set to "Off." Referring to the parameters above, what is the result if NO error handling code is written and a runtime error occurs?

Which one of the following is NOT a valid state management tool?

Which of the following is not used with the page.bind() method?

Which one of the following is not an option for <sessionstate mode>

Which one of the following is correct regarding to ASP.NET page life-cycle stages

What is the base type of a data source object in ASP.NET data-binding?

Can we use Query String with the Server.Transfer and Server.Execute ?

What is the sequence of methods which get fired during a page load and unload

What data type does the RangeValidator control support?

Difference between Server.Transfer() & Response.Redirect() methods?

Which of the following is the standard column type in the DataGrid

what are the different methods to access Database in .Net ?

Do Web controls support Cascading Style Sheets?

The "EnableViewState" is allows the page to save the users input on a form.

Which of the following MS platform will be used to create Web applications and Web services that run under IIS

What web form event handler will be triggered when the Page object is released from memory?

Which namespace contains classes for the Session object?

What web form event handler will be triggered as the first step in your Web form' s life cycle?

In order to debug and trace application execution, what namespace should you use

Which of the following correctly describe the User interface feature of web applications

IIS gives certain options for how the server will run Web application. For pure performance, which option should be used?

What is the event handler that occurs at the beginning of each request to the server

to turn Session state off for a Web form. What should be done

Session state variables are available to which of the following

Which of the following is true regarding the positioning of user controls on a web form

In ASP.NET, controls support absolute positioning through which attribute

More than one validation control can be attached to an input control

select the invalid validation controls in asp.net

select the web server control which Displays a sequence (predefined or random) of images.

to disable the validation control for validating which statement is true

is it possible to set the maximum length for multiline textbox ?

Which of the following does correctly describe the web form feature of web applications

It can possible to derive a Web form class from a base Web form.

You are creating an ASP.NET application to track sales orders for Certkiller Ltd. The application users an ADO.NET DataSet object that contains two DataTable objects. One table is named Orders, and the other table is named OrderDetails. The application displays data from the Orders table in a list box. You want the order details for an order to be displayed in a grid when a user selects the order in the list box. You want to modify these objects to enable your code to find all the order details for the selected order. What should you do?

Is it possible to share session information among ASP and ASPX page?

Which of the following Methods would be used in displaying an Alert Message Box from System.Web.UI.WebPage?

How many ways are there to maintain states in an ASP.net application ?

Which is a key element of a Web application?

Which one contains the style definitions to use for the HTML generated by project?

How to define a class which can be stored in viewstate

Select the Odd one

With the help of which property is it possible to check whether an. ASPX page is posted back to the server?

Which are the followinf channels used by .Net Remoting for communication accross boundaries?

Does the .NET Framework have in-built support for serialization?

How do we know exactly when an Application End event will occur at runtime?

Four Types of controls that can be added to ASP.NET

what is the event handler that occurs when a user leaves application by closing his browser?

The OleDbDataReader allows forward and backward row navigation.

Which OleDbCommand class property is used to specify the SQL command or stored procedure to execute?

How to retrieve the item in datagrid when it is added in footer?

Page Processing steps

ASP.Net Order of events

which one of following serialization is used to serialize public and private data?

What should be done in order to create a permanent cookie?

Which property do we use to remove cookies from one page?

How do you change the Page Title in ASP.NET dynamically?

Which of the following codes help you automatically refresh your web page after 20 seconds?

for displaying the sales data of past 5 years in a DataGrid on a Web Form(good Performance), the best strategy to use in retrieving the data is---

which tools would be set to create the .snk(Strong Names) files to store the public/private keys in?

for obtaining performance information about Web Application,which of the following will be used?

Security is very important on any web site. By default, a .Net web site is configured with which of the following authentication types?

for providing on-line help for the users what should be done ?

Which type of files should be place in /bin directory usder the virtual directory?

Which of the following is an authentication method for an ASP.Net web application?

in asp.net, if several hundred users want to access the data from sql server 2000 then for improving the performance what shoud be done?

Which of the following is used for deploying an ActiveX component from a web application?

Which of the following statements would you use to properly describe unit testing?

Why would you use a SqlConnection object instead of an OleDbConnection object?

Which is the most appropriate place to install a Strong-Named assembly that is intended for use among several web applications?

in ASP .Net Page class, whic event would be attached to an event published by a control on the web page?

Which of the following incorrectly describe ASP.Net is?

Which protocol is used by web services?

In global.asax file which event will occur first when you invoke an application?

Which data type is not supported by the RangeValidator control ?

In order to debug and trace application execution, what namespace should you use?

What is ExecuteNonQuery()

Which namespace we will use to connect SQL-SERVER 7.0 or later versions Databsse?

How many forms can be added in asp.net?

Which interface is used by ASP.NET to create unique Ids?

The trace tag in the web.config file uses which of the following parameters to describe whether the statistics should be arranged according to time or category?

Which of the following methods does ASP.NET provide to print messages in the trace information block of the page?

Which of the following methods are used to write the Trace object?

What happens in the following code? Response.Cache.SetExpires(DateTime.Now.AddSeconds(30)); Response.Cache.SetSlidingExpiration(true);

Which property of the Session object is used to set the local identifier?

Which type of Caching is supported by ASP.NET?

Which element of the ADRotator control specifies the priority of the advertisement in the shedule of rotation of all advertisements?

Which of the following classes should we import in order to set the duration of the cache?

What language is used for Mobile.NET?

Which of the following statements indicates ASP.NET’s advantage over ASP?

In ASP.NET a Web Page (.aspx) can be Inherites from

What the difference between User Control and Custom Control.

You are converting an existing ASP-based Web application to ASP.NET. After creating your first ASP.NET page, you discover the AutoEventWireup attribute of the Page directive. The attribute's value is currently set to false. When should you set the AutoEventWireup attribute's value to true?

You are creating an ASP.NET Web site for your company. The Web site will use both Microsoft(R) .NET Framework server controls and ActiveX controls. You want to use Microsoft Visual Studio(R) .NET to create a Setup and Deployment project to package the ActiveX controls. Which project type should you create?

For "pattern matching" which Validation control You will choose?

Is it possible a ASPX page contain more than One Scripting Language?

where the default session data stored in ASP.NET?.

You Create an ASP.NET Application for online Ordering.You need to store a small amount of secured information.The Page must work properly for browsers that do not support cookies.You anticipate that the volume of orders on the site will be high,and you need to conserve server resources.what should you do?

Which of the following are the properties of a Server object?

Which method is typically used in conjunction with server variables to identify virtual and relative directory settings?

The Server object has many methods that are used to control the various features of the web server. Some of these are:

To ensure that application-level variables are not updated by more than one user simultaneously, Which of the two methods are used by the Application object?

In the ValidationExpression property of the RegularExpressionValidator control, Which sign allows any value to be entered?

Which event stored in the Global.asax file is fired when the first ASP.NET page in the current application directory (or its sub-directories) is called?

In the ValidationExpression property of the RegularExpressionValidator control, Which sign specifies that checking starts from here?

A summary of the errors occurring in a page can be displayed in which of the following formats?

Comparision of values entered into a control with a specified pattern, is made possible by which of the following controls?

What should be done inorder to disable client-side validation.

Which property of the radiobutton control restricts the user to select only one option from a given set of options?

Which are the rich Controls provided by ASP.NET?


Yahoo! for Good
Click here to donate to the Hurricane Katrina relief effort.

Note: This Group is not a Job Searching Group, so please co-operate and dont transfer any kind of job related material across this Group.AnyOne doing so can be banned from the Group
Thanx , Group Co-Ordinators




SPONSORED LINKS
Computer software spy Automotive computer software Medical computer software
Computer telephony software Computer software online training Computer monitoring software


YAHOO! GROUPS LINKS




No comments: