public void DeliverMessage(Guid trackingId, string message) { // Delivery = save message to file! VirtualPathExtension virtualPathExtension = OperationContext.Current.Host.Extensions.Find<VirtualPathExtension>(); string folder = Path.Combine( new FileInfo(HostingEnvironment.MapPath(virtualPathExtension.VirtualPath)).DirectoryName, "App_Data"); string file = Guid.NewGuid().ToString() + ".txt"; string outputFilePath = Path.Combine(folder, file); using (var writer = new StreamWriter(outputFilePath)) { writer.WriteLine(message); } // Set up and do some tracking... SetTrackingId(trackingId); WCFUserEventProvider ev = new WCFUserEventProvider(); ev.WriteInformationEvent( "DeliveryService.DeliverMessage", string.Format("Message[{0}] delivered to file[{1}]", message, outputFilePath)); }
public void SayHello(Hello hello) { // Set up and do some tracking... var trackingId = SetTrackingId(); WCFUserEventProvider ev = new WCFUserEventProvider(); ev.WriteInformationEvent( "HelloService.SayHello", XmlSerialization.SerializeToXmlString(hello)); // Use the delivery service for each individual message var deliveryService = new DeliveryService.DeliveryServiceClient(); foreach (string recipient in hello.To) { deliveryService.DeliverMessage( trackingId, string.Format( "Hello to {0}, from {1}", recipient, hello.From)); } }
public void DeliverGreeting(MsmqMessage<Greeting> greetingMessage) { // Extract the greeting from the MSMQ message Greeting greeting = greetingMessage.Body; // Set up and do some tracking... var trackingId = SetTrackingId(); WCFUserEventProvider ev = new WCFUserEventProvider(); ev.WriteInformationEvent( "GreetingService.DeliverGreeting", XmlSerialization.SerializeToXmlString(greeting)); // Use the delivery service for each individual message var deliveryService = new DeliveryService.DeliveryServiceClient(); foreach (string recipient in greeting.Recipients) { deliveryService.DeliverMessage( trackingId, string.Format( "{0} {1}", greeting.GreetingMessage, recipient)); } }