1

System.Diagnostics.ConsoleTraceListenerxml ファイルからフェッチしている文字列を使用してインスタンスを作成しようとしています。

Dictionary<string, TraceListener> dListeners = new Dictionary<string, TraceListener>();
string sType = "System.Diagnostics.ConsoleTraceListener";
Type oType = Type.GetType(sType);//getting null here
dListeners["Listener1"] = (TraceListener)Activator.CreateInstance(oType);

上記のoTypeをnullとして取得しています。理由がわからない、何かが足りない?文字列でアセンブリ名も指定する必要がありますか?

4

1 に答える 1

0

アセンブリの完全修飾名を指定した後、インスタンスを作成できました。

ありがとう@ハンス

Dictionary<string, TraceListener> dListeners = new Dictionary<string, TraceListener>();
string sType = "System.Diagnostics.ConsoleTraceListener, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089";
Type oType = Type.GetType(sType);              
dListeners["Listener1"] = (TraceListener)Activator.CreateInstance(oType);
于 2013-04-02T17:02:23.023 に答える