public static bool Equals(VSalesPersonBase Object1, VSalesPersonBase Object2)
{
// both are null
if (Object1 == null && Object2 == null)
return true;
// one or the other is null, but not both
if (Object1 == null ^ Object2 == null)
return false;
bool equal = true;
if (Object1.SalesPersonId != Object2.SalesPersonId)
equal = false;
if (Object1.Title != null && Object2.Title != null )
{
if (Object1.Title != Object2.Title)
equal = false;
}
else if (Object1.Title == null ^ Object1.Title == null )
{
equal = false;
}
if (Object1.FirstName != Object2.FirstName)
equal = false;
if (Object1.MiddleName != null && Object2.MiddleName != null )
{
if (Object1.MiddleName != Object2.MiddleName)
equal = false;
}
else if (Object1.MiddleName == null ^ Object1.MiddleName == null )
{
equal = false;
}
if (Object1.LastName != Object2.LastName)
equal = false;
if (Object1.Suffix != null && Object2.Suffix != null )
{
if (Object1.Suffix != Object2.Suffix)
equal = false;
}
else if (Object1.Suffix == null ^ Object1.Suffix == null )
{
equal = false;
}
if (Object1.JobTitle != Object2.JobTitle)
equal = false;
if (Object1.Phone != null && Object2.Phone != null )
{
if (Object1.Phone != Object2.Phone)
equal = false;
}
else if (Object1.Phone == null ^ Object1.Phone == null )
{
equal = false;
}
if (Object1.EmailAddress != null && Object2.EmailAddress != null )
{
if (Object1.EmailAddress != Object2.EmailAddress)
equal = false;
}
else if (Object1.EmailAddress == null ^ Object1.EmailAddress == null )
{
equal = false;
}
if (Object1.EmailPromotion != Object2.EmailPromotion)
equal = false;
if (Object1.AddressLine1 != Object2.AddressLine1)
equal = false;
if (Object1.AddressLine2 != null && Object2.AddressLine2 != null )
{
if (Object1.AddressLine2 != Object2.AddressLine2)
equal = false;
}
else if (Object1.AddressLine2 == null ^ Object1.AddressLine2 == null )
{
equal = false;
}
if (Object1.City != Object2.City)
equal = false;
if (Object1.StateProvinceName != Object2.StateProvinceName)
equal = false;
if (Object1.PostalCode != Object2.PostalCode)
equal = false;
if (Object1.CountryRegionName != Object2.CountryRegionName)
equal = false;
if (Object1.TerritoryName != null && Object2.TerritoryName != null )
{
if (Object1.TerritoryName != Object2.TerritoryName)
equal = false;
}
else if (Object1.TerritoryName == null ^ Object1.TerritoryName == null )
{
equal = false;
}
if (Object1.TerritoryGroup != null && Object2.TerritoryGroup != null )
{
if (Object1.TerritoryGroup != Object2.TerritoryGroup)
equal = false;
}
else if (Object1.TerritoryGroup == null ^ Object1.TerritoryGroup == null )
{
equal = false;
}
if (Object1.SalesQuota != null && Object2.SalesQuota != null )
{
if (Object1.SalesQuota != Object2.SalesQuota)
equal = false;
}
else if (Object1.SalesQuota == null ^ Object1.SalesQuota == null )
{
equal = false;
}
if (Object1.SalesYtd != Object2.SalesYtd)
equal = false;
if (Object1.SalesLastYear != Object2.SalesLastYear)
equal = false;
return equal;
}