Why are there five tracing levels in System.Diagnostics.TraceSwitcher? Where is the output of TextWriterTraceListener redirected? How do you debug an ASP.NET Web application? What are three test cases you should go through in unit testing? Can you change the value of a variable while debugging a C# application? What is the role of the DataReader class in ADO.NET connections? What is the wildcard character in SQL? Explain ACID rule of thumb for transactions. What connections does Microsoft SQL Server support? Between Windows Authentication and SQL Server Authentication, which one is trusted and which one is untrusted? What does the Initial Catalog parameter define in the connection string? What does the Dispose method do with the connection object? What is a pre-requisite for connection pooling? How is the DLL Hell problem solved in .NET? What are the ways to deploy an assembly? What is a satellite assembly? What namespaces are necessary to create a localized application? What is the smallest unit of execution in .NET? When should you call the garbage collector in .NET? How do you convert a value-type to a reference-type? What happens in memory when you Box and Unbox a value-type? ctype(123.34,integer) - should it throw an error? Why or why not? directcast(123.34,integer) - should it throw an error? Why or why not? Difference between a sub and a function. Explain manifest & metadata. Difference between imperative and interrogative code. Difference between value and reference type. what are value types and reference types? What are the two kinds of properties. Explain constructor. Describe ways of cleaning up objects. How can you clean up objects holding resources from within the code? Which controls do not have events? What is the maximum size of the textbox? Which property of the textbox cannot be changed at runtime? Which control cannot be placed in MDI? What is the difference between proc. sent BY VAL and BY SUB? General C# Interview Questions : Does C# support multiple-inheritance? Who is a protected class-level variable available to? Are private class-level variables inherited? Describe the accessibility modifier “protected internal”. What’s the top .NET class that everything is derived from? What does the term immutable mean? What’s the difference between System.String and System.Text.StringBuilder classes? What’s the advantage of using System.Text.StringBuilder over System.String? Can you store multiple data types in System.Array? What’s the difference between the System.Array.CopyTo() and System.Array.Clone()? How can you sort the elements of the array in descending order?
The tracing dumps can be quite verbose. For applications that are constantly running you run the risk of overloading the machine and the hard drive. Five levels range from None to Verbose, allowing you to fine-tune the tracing activities.
To the Console or a text file depending on the parameter passed to the constructor.
Attach the aspnet_wp.exe process to the DbgClr debugger.
1. Positive test cases (correct data, correct output).
2. Negative test cases (broken or missing data, proper handling).
3. Exception test cases (exceptions are thrown and caught properly).
Yes. If you are debugging via Visual Studio.NET, just go to Immediate window.
It returns a read-only, forward-only rowset from the data source. A DataReader provides fast access when a forward-only sequential read is needed.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. OLE-DB.NET is a .NET layer on top of the OLE layer, so it’s not as fastest and efficient as SqlServer.NET.
Let’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 ‘La%’.
A transaction must be:
1. Atomic - it is one unit of work and does not dependent on previous and following transactions.
2. Consistent - data is either committed or roll back, no “in-between” case where something has been updated and something hasn’t.
3. Isolated - no transaction sees the intermediate results of the current transaction).
4. Durable - the values persist if the data had been committed even if the system crashes right after.
Windows Authentication (via Active Directory) and SQL Server authentication (via Microsoft SQL Server username and password).
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.
The database name to connect to.
Deletes it from the memory.
Multiple processes must agree that they will share the same connection, where every parameter is the same, including the security settings. The connection string must be identical.
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.
An MSI installer, a CAB archive, and XCOPY command.
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.
System.Globalization and System.Resources.
an Assembly.
As a good rule, you should not call the garbage collector. However, you could call the garbage collector when you are done using a large object (or set of objects) to force the garbage collector to dispose of those very large objects from memory. However, this is usually not a good practice.
Use Boxing.
Boxing converts a value-type to a reference-type, thus storing the object on the heap. Unboxing converts a reference-type to a value-type, thus storing the value on the stack.Difference between directcast and ctype.
Answer1
DirectCast requires the run-time type of an object variable to bethe same as the specified type.The run-time performance ofDirectCast is better than that of CType, if the specified type and the run-time typeof the expression are the same. Ctype works fine if there is a valid conversion defined between the expression and the type.
Answer2
The difference between the two keywords is that CType succeeds as long as there is a valid conversion defined between the expression and the type, whereas DirectCast requires the run-time type of an object variable to be the same as the specified type. If the specified type and the run-time type of the expression are the same, however, the run-time performance of DirectCast is better than that of CType.
An example of a ctype and directcast.
In the preceding example, the run-time type of Q is Double. CType succeeds because Double can be converted to Integer, but DirectCast fails because the run-time type of Q is not already Integer
Answer1
It would work fine. As the runtime type of 123.34 would be double, and Double can be converted to Integer.
Answer2
the ctype(123.34,integer) will work fine no errors
It would throw an InvalidCast exception as the runtime type of 123.34 (double) doesnt match with Integer.
Answer1
A Sub does not return anything whereas a Function returns something.
Answer2
-A Sub Procedure is a method will not return a value
-A sub procedure will be defined with a “Sub” keyword
Sub ShowName(ByVal myName As String)
Console.WriteLine(”My name is: ” & myName)
End Sub
-A function is a method that will return value(s).
-A function will be defined with a “Function” keyword
Function FindSum(ByVal num1 As Integer, ByVal num2 As Integer) As Integer
Dim sum As Integer = num1 + num2
Return sum
End Function
Answer1
Manifest is metadata about assemblies. Metadata is machine-readable information about a resource, or “”data about data.” In .NET, metadata includes type definitions, version information, external assembly references, and other standardized information.
Answer2
Manifest: Manifest describes assembly itself. Assembly Name, version number, culture, strong name, list of all files, Type references, and referenced assemblies.
Metadata: Metadata describes contents in an assembly classes, interfaces, enums, structs, etc., and their containing namespaces, the name of each type, its visibility/scope, its base class, the nterfaces it implemented, its methods and their scope, and each method’s parameters, type’s properties, and so on.
There are imperative and interrogative functions. Imperative functions are the one which return a value while the interrogative functions do not return a value.
Value type - bool, byte, chat, decimal, double, enum , float, int, long, sbyte, short, strut, uint, ulong, ushort
Value types are stored in the Stack
Reference type - class, delegate, interface, object, string
Reference types are stored in the Heap
Two types of properties in .Net: Get and Set
Constructor is a method in the class which has the same name as the class (in VB.Net its New()). It initializes the member attributes whenever an instance of the class is created.
Answer1
There is a perfect tool provide by .net frameworks calls Garbage collector, where by mean of GC we can clean up the object and reclaim the memory. The namespace used is System.GC
Answer2
the run time will maintain a service called as garbage collector. This service will take care of deallocating memory corresponding to objects. it works as a thread with least priority. when application demands for memory the runtime will take care of setting the high priority for the garbage collector, so that it will be called for execution and memory will be released. the programmer can make a call to garbage collector by using GC class in system name space.
Call the dispose method from code for clean up of objects
Timer control.
65536.
Locked Property.
The controls that do not have events.
BY VAL: changes will not be reflected back to the variable.
By REF: changes will be reflected back to that variable.( same as & symbol in c, c++)
No.
It is available to any sub-class (a class inheriting this class).
Yes, but they are not accessible. Although they are not visible or accessible via the class interface, they are inherited.
It is available to classes that are within the same assembly and derived from the specified base class.
System.Object.
The data value may not be changed. Note: The variable value may be changed, but the original immutable data value was discarded and a new data value was created in memory.
System.String is immutable. System.StringBuilder was designed with the purpose of having a mutable string where a variety of operations can be performed.
StringBuilder is more efficient in cases where there is a large amount of string manipulation. Strings are immutable, so each time a string is changed, a new instance in memory is created.
No.
The Clone() method returns a new array (a shallow copy) object containing all the elements in the original array. The CopyTo() method copies the elements into another existing array. Both perform a shallow copy. A shallow copy means the contents (each array element) contains references to the same object as the elements in the original array. A deep copy (which neither of these methods performs) would create a new instance of each element's object, resulting in a different, yet identical object.
By calling Sort() and then Reverse() methods.
C# Continue...
Labels: C# Technical