По поводу обновления записей "Early Bound":
https://msdn.microsoft.com/en-us/library/gg334754.aspx
https://msdn.microsoft.com/en-us/library/gg328499.aspx
Теперь по поводу получения записей - всегда используйте нижний реестр для имен аттрибутов и сущностей, т.е. вместо
Код:
ColumnSet attributes = new ColumnSet(new string[] { "FirstName" });
используйте
Код:
ColumnSet attributes = new ColumnSet(new string[] { "firstname" });