From a versioning perspective, what are the drawbacks of extending an
interface as opposed to extending a class?
With regard to versioning, interfaces are less flexible than classes.
With a class, you can ship version 1 and then, in version 2, decide to
add another method. As long as the method is not abstract (i.e., as long
as you provide a default implementation of the method), any existing
derived classes continue to function with no changes. Because interfaces
do not support implementation inheritance, this same pattern does not
hold for interfaces. Adding a method to an interface is like adding an
abstract method to a base class--any class that implements the interface
will break, because the class doesn't implement the new interface
method.
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
What namespaces are necessary to create a localized application?
System.Globalization, System.Resources.
Does Console.WriteLine() stop printing when it reaches a NULL
character within a string?
Strings are not null terminated in the runtime, so embedded nulls are
allowed. Console.WriteLine() and all similar methods continue until the
end of the string.
What is 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
is being operated on, a new instance is created.
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 is 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.
Why do I get a security exception when I try to run my C# app?
Some security exceptions are thrown if you are working on a network
share. There are some parts of the frameworks that will not run if being
run off a share (roaming profile, mapped drives, etc.). To see if this
is what's happening, just move the executable over to your local drive
and see if it runs without the exceptions. One of the common exceptions
thrown under these conditions is
System.Security.SecurityException.
To get around this, you can change your security policy for the intranet
zone, code group 1.2, (the zone that running off shared folders falls
into) by using the caspol.exe tool.
Is there any sample C# code for simple threading?
Some sample code follows: using System;
using System.Threading;
class ThreadTest
{
public void runme()
{
Console.WriteLine("Runme Called");
}
public static void Main(String[] args)
{
ThreadTest b = new ThreadTest();
Thread t = new Thread(new ThreadStart(b.runme));
t.Start();
}
}
What is the difference between // comments, /* */ comments and ///
comments?
Single-line, multi-line and XML documentation comments.
What is the difference between and XML documentation tag?
Single line code example and multiple-line code example.
Explain the three services model (three-tier application).
Presentation (UI), business (logic and underlying code) and data (from
storage or other sources).
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).
How do you inherit from a class in C#?
Place a colon and then the name of the base class. Notice that it is
double colon in C++.
How do I port "synchronized" functions from Visual J++ to C#?
Original Visual J++ code: public synchronized void Run()
{
// function body
}
Ported C# code: class C
{
public void Run()
{
lock(this)
{
// function body
}
}
public static void Main() {}
}
Page Numbers :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16