2011-09-02 45 views
0
frm =(Form)Assembly.GetEntryAssembly().CreateInstance("EditFrom"); 
return frm; 

這會返回空值。如何獲得價值創建一個類型返回null的實例

+0

嘗試'typeof(EditFrom)'而不是「EditFrom」。 – xanatos

+0

這個問題確實過於寬泛。如果您可以改進它,請舉報主持人注意。 –

回答

5

嘗試指定類的完全限定名,包括其所在命名空間:

var frm = (Form)Assembly 
    .GetEntryAssembly() 
    .CreateInstance("SomeNamespace.EditForm"); 

其中SomeNamespace是其中EditForm類定義的命名空間。還要確保你已經正確指定了類名。

4

也許是一個錯字(EditForm而不是EditFrom)?否則檢查Darin Dimitrov的答案;

frm =(Form)Assembly.GetEntryAssembly().CreateInstance("EditForm"); 
return frm; 
+0

它似乎是相同的錯誤 – sankar

+0

@Sankar:是的,我看着MSDN,並寫有你必須指定完整的類型名稱。這意味着命名空間後面跟着由點分隔的類名,例如。 YourProjectNamespace.EditForm。請參閱Darins answer(+1)並檢查課程名稱(因爲可能的錯字),這應該有助於... – HCL