鉴于此事件
public class DummyEvent : EventDTO{
public CustomUUID Cid { get; set; }
public DateTime Date { get; set; }
public Guid Id { get; set; }
}
我通过 MSMQ 发送消息:
var de = new DummyEvent {
Date = DateTime.UtcNow,
Id = Guid.NewGuid(),
Cid = Guid.NewGuid()
};
var mq = new MessageQueue(AppSettings.EventQueue);
mq.Formatter = new XmlMessageFormatter(new[]{de.GetType()});
mq.Send(de);
var e = reciever.Receive().Body;
Date 是System.DateTime所以它可以反序列化。
Id 是System.Guid,所以它可以反序列化。
Cid 是CustomUUID,它是用户定义的类型,不会被反序列化。
我还需要发送客户定义的类型,但网上信息很少。
编辑:它实际上没有被序列化,所以问题在于发送消息