get field data from CRM 4

    
// get field data from crm 4.0 entity

public string getLookup(string _prop)
{
Lookup lkp = (Lookup)entity[_prop];
return lkp.name;
}

internal string getPicklist(string _prop)
{
Picklist pick = (Picklist)entity[_prop];
return pick.name;
}

public string getDate(string _prop)
{
CrmDateTimeProperty cdp = new CrmDateTimeProperty(_prop, (CrmDateTime)entity.Properties[_prop]);
return cdp.Value.date;
}

public string getBool(string _prop)
{
string ret = "";
try
{
CrmBooleanProperty CBP = new CrmBooleanProperty(_prop, (CrmBoolean)entity.Properties[_prop]);
ret = CBP.Value.Value.ToString();
}
catch (Exception ex)
{
ret = "";
}
return ret;
}

internal string getOwner(string _prop)
{
Owner own = (Owner)entity[_prop];
return own.name;
}

public string getData(string _prop)
{
string ret = "";
string type = null;

try
{
type = entity.Properties[_prop].GetType().ToString();
System.Diagnostics.Debug.Print("TYPE( {0} ):= {1}",_prop, type);
}
catch (Exception e)
{
type = e.Message;
ret = e.Message;
return ret;
}

if (type == "Microsoft.Crm.Sdk.Owner")
{
ret = ret = getOwner(_prop);
}
else if (type == "Microsoft.Crm.Sdk.CrmBoolean")
{
ret = getBool(_prop);
}
else if(type == "System.String")
{
//StringProperty sp = new StringProperty(_prop, (string)entity.Properties[_prop]);
ret = entity.Properties[_prop].ToString();
}
else if (type == "Microsoft.Crm.Sdk.Lookup")
{
ret = getLookup(_prop);
}
else if (type == "Microsoft.Crm.Sdk.Picklist")
{
ret = getPicklist(_prop);
}

return ret;
}