The problem Xpo in order to support transactions implements some special kind of property setters like private string lastName;
public string LastName
{
get
{
return lastName;
}
set
{
string oldValue = lastName;
if (oldValue == value)
return;
lastName = value;
...