bu elde edilemez: Bir CreationDate
özellikleri (. Alır veya bu Changeset yaratılması tarihi belirler)
bir proje kapsamında tüm değişiklik kümesi bilgi listelemek için bir örnek vardır TFS uyarıları. Böylece TFS api check in olayını kullanabilirsiniz.
ISubscriber arabirimine bir göz atın.
Bir sınıf kitaplığı projesi oluşturun. Projeyi derlemek
public class CheckinEventHandler : ISubscriber
{
public string Name
{
get { return "CheckinEventHandler"; }
}
public SubscriberPriority Priority
{
get { return SubscriberPriority.Normal; }
}
public EventNotificationStatus ProcessEvent(TeamFoundationRequestContext requestContext, NotificationType notificationType, object notificationEventArgs, out int statusCode,
out string statusMessage, out ExceptionPropertyCollection properties)
{
statusCode = 0;
properties = null;
statusMessage = String.Empty;
if (notificationType == NotificationType.Notification && notificationEventArgs is CheckinEvent)
{
//Write info in file
}
}
public Type[] SubscribedTypes()
{
return new Type[1] { typeof(CheckinEvent)};
}
}
gibi bir olay işleyicisi sınıf şeyler yazın ve C dll yerleştirin: \ Application Tier \ Web Hizmetleri \ Program Files \ Microsoft Team Foundation Server 2010 \ bin \ Eklentiler
yılında ProcessEvent yöntemi, herhangi bir dosya türünde checkin hakkında bilgi yazar. Bunu bir metin dosyasında yazabilirsiniz. Bir gün boyunca aynı dosyadaki tüm bilgileri ekleyin. Yöntem daha sonra programlı dosyayı silmek doğrudur döndürürse
public bool SendMail()
{
try
{
MailMessage mail = new MailMessage();
mail.To.Add("some emailId");
mail.From = new MailAddress("some emailId");
mail.Subject = "Checkin Info";
mail.Body =//Assign content of the text file here
mail.IsBodyHtml = false;
SmtpClient smtp = new SmtpClient();
smtp.Host = //e.g. "smtp.gmail.com"
smtp.Credentials = new System.Net.NetworkCredential
("userId", "password");
smtp.EnableSsl = false;
smtp.Send(mail);
return true;
}
catch (Exception e)
{
return false;
}
}
:
Sonra böyle bir e-posta memuru programı şey yaratmak.
Bu programı, her gün TaskSchedular kullanarak sabit bir zamanda çalışacak şekilde zamanlayabilirsiniz.
Her gün sadece bir e-posta alacağınız bu şekilde, herhangi bir check-in işlemini de kaçırmayacaksınız.
Evet sağol. Aslında bunu denedim. Versioncontrolclient.query history() ile çalıştım. Yine, belirli bir tarihi geçerek değişim setlerini alamıyorum. Tüm değişim kümelerini ve belirli bir tarihi kontrol etmem gerekiyordu. Bunu versioncontrolserver'da elde etmek için herhangi bir seçenek var mı? – Karthick