0
我已經註冊了服務這樣的啓動對象:如何解決和使用autofac和JSON
builder.RegisterType<NoticeEmail>().Keyed<INoticeChannel>(ChannelType.Email);
builder.RegisterType<NoticePushover>().Keyed<INoticeChannel>(ChannelType.Pushover);
,我解決這些問題如下:
public INoticeChannel Resolve(ChannelType type, string message)
{
var r = _context.ResolveKeyed<INoticeChannel>(type);
Type myType = Type.GetType(r.GetType().Name);
var t = JsonConvert.DeserializeObject(message, myType);
return r;
}
解決是偉大的工作,但我也要喜歡用來自message
的json數據初始化對象並返回特定的對象。我怎樣才能做到這一點?
你爲什麼要叫'Type.GetType(r.GetType()名稱。)',而不是簡單地使用'r.GetType()'? – Steven