public void RunActionFrom(Message inMessage)
{
var ev = new AuctionEvent(inMessage.Body
.Split(new char[] {';'})
.Select(elem => elem.Split(new char[] {':'}).Select(s => s.Trim()).ToList())
.Where(elem => elem.Count > 1)
.ToDictionary(elem => elem[0], elem => elem[1])
);
Action<AuctionEvent> action;
if (mActions.TryGetValue(ev.EventType, out action)) {
action(ev);
}
}