Cyclic Constructor in C#
public class Car
{
//Private Member
private int m_CarID=int.MinValue;
private string m_CarType=string.Empty;
private string m_CarName=string.Empty;
private string m_Color=string.Empty;
private string m_Model=string.Empty;
//Constructor
public Car()
{
//default Constructor
}
//Parameterized Constructor
public Car(int carID, string carName)
{
m_CarID = carID;
m_CarName = carName;
}
//Cyclic Constructor
public Car(int carID, string carName, string carType,string carModel):this(carID,carName)
{
m_CarType = carType;
m_Model = carModel;
}
//Cyclic Constructor
public Car(int carID, string carName, string carType, string carModel,string color)
: this(carID, carName,carType,carModel)
{
m_Color = color;
}
}
static void main()
{
Car objCarA=new Car();
Car objCarB=new Car(1,"matiz");
Car objCarC=new Car(1,"matiz","SmallCar","2000");
Car objCarD=new Car(1,"matiz","SmallCar","2000","Dark Green");
}
Validation to Check for Comma separated EmailIDs
Regular Exp Description:
List of Email ids separated with [,] Email ID may contain character set as [._-']
Regular Expression
^((\w+([-_.']\w+)*@\w+([-_.']\w+)*\.\w+([-_.']\w+)*)*([,])*)*$
Regular expression Rules:
Finite automata rule Values should proceed with email Ids with Comma Separated. No comma will precede the email IDs.
Matches:
abc.xyz@anonymous.com
abc.xyz@anonymous.com,abc-xyz@anonymous.com,abc_xyz@anonymous.com
abc.xyz@anonymous.com,com,D'Souza@anonymous.com
Non-Matches:
abc.xyz
,abc.xyz@anonymous.com
abc.xyz@anonymous.com,
abc
Javascript
function CheckForCommaSeperatedEmailIDs( fieldValue )
{
var regex = /^((\w+([-_.']\w+)*@\w+([-_.]\w+)*\.\w+([-_.]\w+)*)*([,])*)*$/;
if( !fieldValue.match( regex ) )
{
alert('The Email IDs Invalid');
return false;
}
return true;
}
Validation to check UserID with Period/Dot seperated
Regular Expression Rules:
Finite automata rule, Values should precede with characters of set [A-Za-z] and followed with period(.) and character set [A-Za-z]
Regular Expression:
^[a-zA-Z]+(\.[a-zA-Z]+)+$
Matches
1) Ratan.Tata
2) Anil.Dhiru.Ambhani
Non-Matches
Ratan.
1) .Mukesh.
2) Amir.khan.
Regular Expression Logic in Javasctipt
function CheckForPeriodSeperatedUserID( fieldValue )
{
var regex = /^[a-zA-Z]+(\.[a-zA-Z]+)+$/;
if( !fieldValue.match( regex ) )
{
alert('The UserID is not desired format,XXX.YYYY XXX.YYYY.ZZZZ');
return false;
}
return true;
}
|
Real Time Use Of Static Constructor
if you look at above class it is an Utility class and it is consume by Business entity class instance say object Date that has minute component in it.
If we have 10 screens that requires minutes to be displayed in dropdownlist in such cases rather then calling 10 calls to database or constructing this collection we prefer calling one instance at the very load of the application which in turns consume by all the pages and across all the users. In the process we have one instance available for all users and across pages. If one see in normal constructor ,one can notice it is invoked after instance is created whereas static constructor is invoked always first and when it is referenced.
use System.collection.generics;
public class Utility { public static IDictionary m_Minute = null; static Utility() { m_Minute=new IDictionary(); m_Minute.Add(1,"00"); m_Minute.Add(2,"15"); m_Minute.Add(3,"30"); m_Minute.Add(3,"45"); } public static IDictionary GetMinute() { return m_Minute; } }
Validation to Check for special Character
|
Description :
Below javascript code function returns false for entered special character and true for non special character.
function CheckForSpecialCharacter( controlValue )
{
var regex = /^[a-zA-Z0-9\s]+$/;
if( !controlValue.match( regex ) )
{
alert('Special Character is not allowed due potential security threat.');
return false;
}
Problem Statement:
We have scenario where we have data stored in arraylist collection and want to pass this as data as input to Webservice method in string array format.
Convert ArrayList() Collection to String [] Array
|
Namespace: System.collections
Solution:
private string[] ConvertArrayListToStringArray(ArrayList arrList)
{
for (int iIter=0;iIter<5 br="" iiter=""> {
arrList.Add("StringValue"+iIter);
}
return string[]arrList.ToArray(typeof(string));
}5>
Iterator,Delegate,Predicates,Anonymous method and Generics C#2.0
|
A perfect blend of Iterator,Delegate,Predicates,Anonymous method and Generics C#2.0. One can make use of these in real world scenario to save memory and increase performance of an application.
Delegates defines signature of any method that takes one input parameter and returns a single object of another type.
public delegate Tout Action(Tin element);
protected void Page_Load(object sender, EventArgs e)
{
foreach (string str in GetFormatedCustomerName())
Response.Write(str);
}
public IEnumerable GetFormatedCustomerName()
{
List customerList=new List();
customerList.Add(new Customer("001", "Santosh",3552));
customerList.Add(new Customer("002", "Poojari", 42424));
customerList.Add(new Customer("005", "Arjun", 42424));
return BuildFormattedName(customerList,
delegate(Customer objCustomer)
{
return string.Format("{0} - {1}
", objCustomer.CustomerId, objCustomer.CustomerName);
});
}
public IEnumerable BuildFormattedName(IEnumerable list, Action handler)
{
foreach (Tin entry in list)
yield return handler(entry);
}
|
|
|