0
我有一個事件定義如下:在包含數組的接口上使用nServiceBus的createInstance - 如何實例化數組?
public interface IClass
{
DateTime EffectiveDate { get; set; }
IChild[] Children { get; set; }
}
public interface IChild
{
string From { get; set; }
string To { get; set; }
decimal ADecimal { get; set; }
}
我嘗試使用以下語法
bus.send<IClass>(class=>
{
class.EffeciveDate = DateTime.now;
class.Children = //Not sure what to do here
}
如何去實例化數組和填充子對象?
好點,這將有可能工作。但我想讓孩子成爲一個界面,因爲它本身可能是一個信息。 –
NSB不會阻止具體類的發佈; 「事件就是界面」實際上只是一種慣例。你選擇實例化IClass接口的任何方式也應該起作用。如果你真的想要,你應該可以使用bus.CreateInstance()。 但我不會。將事件中的接口包含在事件中以使用多態時很誘人。 NSB的專有序列化將不包含任何子類屬性。 因爲你不能從IClass派生出有用的東西,所以它只會是一個爲NSB約定而設計的接口,並不像c#中預期的那樣工作。 –
perfectionist
謝謝。據我所知,使用CreateInstance與bus.send 相同,這就是我遇到的問題。這個問題的範圍超出了我選擇使用接口的原因。 –