Thursday, 8 April 2010

Differences between a static member function and non-static member functions

The differences between a static member function and non-static member functions are as follows.
  • A static member function can access only static member data, static member functions and data and functions outside the class. A non-static member function can access all of the above including the static data member.
  • A static member function can be called, even when a class is not instantiated, a non-static member function can be called only after instantiating the class as an object.
  • A static member function cannot be declared virtual, whereas a non-static member functions can be declared as virtual
  • A static member function cannot have access to the 'this' pointer of the class.
The static member functions are not used very frequently in programs. But nevertheless, they become useful whenever we need to have functions which are accessible even when the class is not instantiated.

How can I make my SQL queries case sensitive?

CREATE TABLE mytable
(
mycolumn VARCHAR(10)
)
GO

SET NOCOUNT ON

INSERT mytable VALUES('Case')
GO

SELECT mycolumn FROM mytable WHERE mycolumn='Case'
SELECT mycolumn FROM mytable WHERE mycolumn='caSE'
SELECT mycolumn FROM mytable WHERE mycolumn='case'

You can alter your query by forcing collation at the column level:

SELECT myColumn FROM myTable
WHERE myColumn COLLATE Latin1_General_CS_AS = 'caSE'

SELECT myColumn FROM myTable
WHERE myColumn COLLATE Latin1_General_CS_AS = 'case'

SELECT myColumn FROM myTable
WHERE myColumn COLLATE Latin1_General_CS_AS = 'Case'

-- if myColumn has an index, you will likely benefit by adding
-- AND myColumn = 'case'

Saturday, 6 March 2010

1.Difference between .Net 2.0,3.0,3.5 ?

This question may be ask any interview. so the answer us that:

NET Framework 2.0
• A new hosting API for native applications wishing to host an instance of the .NET runtime
• Full 64-bit support for both the x64 and the IA64 hardware platforms.
• Language support for Generics built directly into the .NET CLR.
• Many additional and improved ASP.NET web controls.
• New data controls with declarative data binding.
• New personalization features for ASP.NET, such as support for themes, skins and webparts.
.NET Framework 3.0

• Windows Presentation Foundation (WPF), formerly code-named Avalon; a new user interface subsystem and API based on XML and vector graphics, which will make use of 3D computer graphics hardware and Direct3D technologies.
• Windows Communication Foundation (WCF), formerly code-named Indigo; a service-oriented messaging system which allows programs to interoperate locally or remotely similar to web services.
• Windows Workflow Foundation (WWF) allows for building of task automation and integrated transactions using workflows.
• Windows CardSpace (WCS), formerly code-named InfoCard; a software component which securely stores a person's digital identities and provides a unified interface for choosing the identity for a particular transaction, such as logging in to a website.


2.0 => framework that shipped with VS 2005 VB 8.0 / C# 2.0
3.0 => same framework as 2.0 + WCF + WPF + WF
3.5 => all the above + LINQ technologies and will ship with the next VS including VB 9.0 and C# + Ajax included.


1.1=> we had the basic framework, web services, CLR, ADO etc
2.0=> paid more attention on increasing the productivity of the developer. They had modules like MARS, Generics, Partial classes, DPAPI etc.
3.0=> WCF, WPF and WWF
3.5=> LINQ, AJAX which is now an integral part of 3.5 setup and new protocol support for WS-* specifications.

Friday, 5 March 2010

List all the Stored Procedures/Triggers/Views Associated with a specific Table?

DECLARE @TABLENAME VARCHAR(50)
SET @TABLENAME='' --Pass the Table Name here
SELECT @TableName as "Table Name",A.Name AS "SP Name",B.Text as "SP Text" from SYSOBJECTS A
INNER JOIN SYSCOMMENTS B
ON A.ID=B.ID
WHERE B.TEXT LIKE '%'+@TableName+'%'
and A.TYPE='P'
Same way we can use the above query to find out View, Trigger. If you wanted to list views and Triggers change the value of "Type" as below,
TYPE='V' --For View
TYPE='TR' -- Trigger

Thursday, 25 February 2010

string.IsNullOrWhiteSpace()

string.IsNullOrWhiteSpace()
.NET 4 adds new method called string.IsNullOrWhiteSpace() which checks for spaces, empty or null. This is a nice time-saver for developers.. This static method returns true if a string is full of whitespace characters. Let us consider the below example .

static void Main()
{
string strTest = "Simple Talk";
string strNull = null;
string strEmpty = string.Empty;
string strWhiteSpace = "\t\r\n\n ";
Console.WriteLine("Is null or whitespace Exmaple!!");
Console.WriteLine("TestSting: " + string.IsNullOrWhiteSpace(strTest));//false
Console.WriteLine("NullString: " + string.IsNullOrWhiteSpace(strNull)); //true
Console.WriteLine("EmptyString: " + string.IsNullOrWhiteSpace(strEmpty)); //true
Console.WriteLine("WhiteSpaceString: " + string.IsNullOrWhiteSpace(strWhiteSpace)); //true
Console.ReadLine();
}