幫我解決問題 - 爲什麼在.NET 4.0下運行時,這段代碼會導致一個VerificationException?爲什麼這行在.NET 4下運行時會導致一個VerificationException?
public T parseEnum<T>(string value, T defaultValue) {
//Removing the following lines fixes the problem
if (!typeof(T).IsEnum) throw new ArgumentException("T must be an enumerated type");
return defaultValue;
}
我在.NET 2.0組件跑peverify
並得到以下信息:
ImageResizer.Util.Utils :: parseEnum [T]] [偏移0X0000000A]的 '這' 參數來該調用必須是調用方法的'this'參數。
這將導致在中等信任下運行代碼時發出VerificationException: Operation could destabilize the runtime
消息。
我已經閱讀了堆棧溢出中所有類似的帖子,並且它們都不適用於此代碼。
是否有什麼新的泛型會導致此代碼在某種程度上無效?
我只是運行這個代碼,並沒有收到這樣的例外。你確定這是錯誤所在嗎?這是在asp中使用嗎? –
您是否使用Visual Studio或其他編譯器(如Mono)生成.NET程序集? – Jacob
錯誤消息向我表明它位於正在發生此問題的呼叫地點(即您調用方法的地方)。你能向我們展示那些代碼嗎? –