我想初始化一些記錄發來的郵件中是這樣的:如何在nservicebus中預處理消息?
public class BaseMessage
{
public long TraceID { get; set; }
}
public class MyMessage : BaseMessage, ICommand
{
//..other properties
}
public class Handler : IHandleMessages<MyMessage>
{
public void Handle(MyMessage message)
{
log4net.ThreadContext.Properties["TraceID"] = message.TraceID
//Process message
}
}
的問題是我有很多信息,我想對所有的人都爲此發來的郵件中我會的。希望能夠做這樣的事情:
public class Handler : IInitializeHandlers, IHandleMessages<MyMessage>
{
public void Init(BaseMessage message)
{
log4net.ThreadContext.Properties["TraceID"] = ((BaseMessage)message).TraceID
}
public void Handle(MyMessage message)
{
//Process message
}
}
我只是從Bus.CurrentMessageContext中抓取它嗎?這是線程安全的權利? – Micah