Я пытаюсь создать сервис, читающий мертвую букву из очереди мертвой буквы транзакционной системы.Как создать службу мертвых букв WCF для MSMQ3.0
Конфигурация службы выглядит следующим образом:
<service name="NotificationDeadLetterQueueService">
<endpoint
address="net.msmq://localhost/system$;DeadXact"
binding="netMsmqBinding"
contract="INotificationService"
/>
</service>
Мой интерфейс сервиса:
[ServiceContract]
public interface INotificationService
{
[OperationContract(IsOneWay=true)]
[NetDataContractSerializerFormatAttribute]
void HandleNotification(Notification notification);
}
С моей реализации услуг:
[ServiceBehavior(InstanceContextMode = InstanceContextMode.PerCall)]
public class NotificationDeadLetterQueueService : INotificationService
{
#region INotificationService Members
[OperationBehavior(TransactionScopeRequired = true)]
public void HandleNotification(Notification notification)
{
throw new NotImplementedException();
}
#endregion
}
И начать хозяина, как это:
ServiceHost serviceHost = new ServiceHost(typeof(NotificationDeadLetterQueueService));
serviceHost.Open();
До сих пор все выглядит так, как описано во многих книгах и учебниках, но когда я создаю мертвые буквы в транзакционной очереди с мертвой буквой, услуга не запускается. Что не так в моей службе?
Спасибо за помощь Enyra