当托管在运行 asp.net 4 的 IIS 中时,我们遇到以下代码问题:
DataTable dt = new DataTable();
FieldInfo TableCaseSensitiveAmbientFieldInfo =
typeof(DataTable).GetField("_caseSensitiveUserSet", BindingFlags.Instance | BindingFlags.NonPublic);
TableCaseSensitiveAmbientFieldInfo.SetValue(dt, true);
.SetValue() 调用失败并出现 FieldAccessException(此代码来自公共源代码文件名 ADONetHelper.cs,该文件名来自名为 CompactFormatterPlus 的公共源 dll)
这似乎只在 IIS 中托管时才会发生。
我们认为这是由于反射/代码访问权限(在搜索答案之后),但我们还没有找到正确的值集来使该代码能够工作。
有什么想法吗 ??谢谢,弗雷德