| using System; using System.Collections.Generic; using System.Text; using Microsoft.SharePoint; using System.Web; using Microsoft.Office.Server; using Microsoft.Office.Server.Administration; using Microsoft.Office.Server.UserProfiles; namespace ConsoleApplication4 {     class Program     {         static void Main(string[] args)         {             try             {                 using (SPSite site = new SPSite("http://mossweb:1111/sites/Publish"))                 {                     ServerContext context = ServerContext.GetContext(site);                     UserProfileManager profileManager = new UserProfileManager(context);                     // 获取两日之内的变化                     DateTime startDate = DateTime.UtcNow.Subtract(TimeSpan.FromDays(2));                     UserProfileChangeQuery changeQuery = new UserProfileChangeQuery(false, true);                     UserProfileChangeToken changeToken = new UserProfileChangeToken(startDate);                     changeQuery.ChangeTokenStart = changeToken;                     changeQuery.Anniversary = true;                     changeQuery.SingleValueProperty = true;                     changeQuery.MultiValueProperty = true;                     changeQuery.DistributionListMembership = true;                     changeQuery.SiteMembership = true;                     UserProfile user1 = profileManager.GetUserProfile(@"eoffice\user1");                     UserProfileChangeCollection changes = user1.GetChanges(changeQuery);                     foreach (UserProfileChange change in changes)                     {                         Console.WriteLine(change.EventTime.ToString());                         if (change is UserProfilePropertyValueChange)                         {                             UserProfilePropertyValueChange propertyChange = (UserProfilePropertyValueChange)change;                             Console.WriteLine("Property {0} - {1}", , propertyChange.ChangeType.ToString());                         }                         else if (change is UserProfileMembershipChange)                         {                             UserProfileMembershipChange membershipChange = (UserProfileMembershipChange)change;                             Console.WriteLine("Membership {0} - {1}", membershipChange.MemberGroup.DisplayName, membershipChange.ChangeType.ToString());                         }                     }                 }             }             catch (Exception ex)             {                 Console.WriteLine(ex.Message);             }             Console.ReadLine();         }     } } | 
参考资料:Sams Microsoft SharePoint 2007 Development Unleashed
 
 
                     
            
        













 
                    

 
                 
                    