public async Task Handle(ContactInfoSetForPartyEvent message) { using (var context = new RegistryDbContext(Options)) { //var contactInfo = new ContactInfo() //{ // PhoneNumber = message.PhoneNumber, // MobileNumber = message.MobileNumber, // FaxNumber = message.FaxNumber, // WebsiteAddress = message.WebsiteAddress, // EmailAddress = message.EmailAddress, // InstantMessaging = message.InstantMessaging //}; var party = (from c in context.Parties where c.OriginalId == message.PartyId select c).Single(); //party.ContactInfo = contactInfo; party.PhoneNumber = message.PhoneNumber; party.MobileNumber = message.MobileNumber; party.FaxNumber = message.FaxNumber; party.WebsiteAddress = message.WebsiteAddress; party.EmailAddress = message.EmailAddress; party.InstantMessaging = message.InstantMessaging; await context.SaveChangesAsync(); } }
public async Task Handle(ContactInfoSetForPartyEvent message) { using (var context = new RegistryDbContext()) { var contactInfo = new ContactInfo() { PhoneNumber = message.PhoneNumber, MobileNumber = message.MobileNumber, FaxNumber = message.FaxNumber, WebsiteAddress = message.WebsiteAddress, EmailAddress = message.EmailAddress, InstantMessaging = message.InstantMessaging }; var party = (from c in context.Parties where c.OriginalId == message.PartyId select c).Single(); party.ContactInfo = contactInfo; await context.SaveChangesAsync(); } }
/// <summary> /// Sets contact info for the party /// </summary> /// <param name="phoneNumber"></param> /// <param name="mobileNumber"></param> /// <param name="faxNumber"></param> /// <param name="websiteAddress"></param> /// <param name="emailAddress"></param> /// <param name="instantMessaging"></param> public void SetContactInfo(string phoneNumber, string mobileNumber, string faxNumber, string websiteAddress, string emailAddress, string instantMessaging) { var e = new ContactInfoSetForPartyEvent(Id, phoneNumber, mobileNumber, faxNumber, websiteAddress, emailAddress, instantMessaging); RaiseEvent(e); }
/// <summary> /// Apply an event to the current instance /// </summary> /// <param name="evt">The event</param> public void ApplyEvent([AggregateId(nameof(ContactInfoSetForPartyEvent.PartyId))] ContactInfoSetForPartyEvent evt) { var contactInfo = new ContactInfo(evt.PhoneNumber, evt.MobileNumber, evt.FaxNumber, evt.WebsiteAddress, evt.EmailAddress, evt.InstantMessaging); this.ContactInfo = contactInfo; }