You can get a list of properties of an object using reflection.
MyClass o;
PropertyInfo[] properties = o.GetType().GetProperties(
BindingFlags.NonPublic | BindingFlags.Public | BindingFlags.Instance
);
Each Property has a Name attribute which would get you "SomeProperty"