我實例化我的對象與經典Activator.CreateInstance需要另一個對象中被實例
object myObject = Activator.CreateInstance(myType);
代碼,如果工作正常。 事情是,現在,Id想要實例化一個對象,並在其構造函數中,有一個對另一個對象的引用。 所以,如果我只是做上面的代碼中,我得到了NullReferenceException
例外:
Object reference not set to an instance of an object.
我試圖實例有關對象(Activator.CreateInstance),但我得到了同樣的異常...... 我覺得實例我的第二次CreateInstance調用之前有問題的對象是不夠的。我該怎麼辦 ?
編輯:這裏的問題
//A regionManager in needed by MainView as far as I understand the Exception's details
var regionManager = Assembly.LoadFrom("RegionView.dll");
Type rmType = regionManager.GetType("Framework.Hmi.RegionManager");
object obj = Activator.CreateInstance(rmType);
//This works !
var shellViewLibrary = Assembly.LoadFrom("ShellView.dll");
Type svType = shellViewLibrary.GetType("Framework.ShellView.MainView");
object objjj = Activator.CreateInstance(svType);
最後一行失敗,錯誤是NullReferenceException
與細節的代碼:
at Hmi.RegionManager.get_RegionFactory()
at Hmi.RegionManager.CreateRegion(DependencyObject element)
at Hmi.RegionManager.OnSetRegionNameCallback(DependencyObject element, DependencyPropertyChangedEventArgs args)
at System.Windows.DependencyObject.OnPropertyChanged(DependencyPropertyChangedEventArgs e)
at System.Windows.FrameworkElement.OnPropertyChanged(DependencyPropertyChangedEventArgs e)
at System.Windows.DependencyObject.NotifyPropertyChange(DependencyPropertyChangedEventArgs args)
at System.Windows.DependencyObject.UpdateEffectiveValue(EntryIndex entryIndex, DependencyProperty dp, PropertyMetadata metadata, EffectiveValueEntry oldEntry, EffectiveValueEntry& newEntry, Boolean coerceWithDeferredReference, Boolean coerceWithCurrentValue, OperationType operationType)
[...]
我稱之爲C/C 30/40的其他錯誤行,但我不認爲這是有用的...
很難說出發生了什麼 - 我們不知道發生異常的位置等。請提供一個簡短但完整的程序來說明問題。 –
確定,即將編輯 –
svType可能爲空...? (堆棧似乎表明這不是你的問題,但從來不知道^^) –