System.AccessViolation 异常和堆块在 PInvoke 期间修改了过去请求的大小
当尝试从托管代码 PInvoke 本机调用时,我遇到 System.AccessViolation Exception 和堆块修改了过去请求的大小。本机代码是 COBOL win32 dll。该问题…
事件声明和 FieldOffsetAttribute 使用
我有一个使用 Attribute StructLayout 属性的 CLR 类: [StructLayout(LayoutKind::Explicit)] public ref class Matrix4 : System::ComponentModel::…
typeof(T) 可能返回 null
当对通过 TypeBuilder 创建的类型使用 typeof 运算符时,该运算符将返回 null。 我很好奇为什么会发生这种情况以及如何预防它。 我开始认为这是即时窗…
将 List 中的类实例插入 SQL 数据库
在 SQL 2008 R2 表中插入类实例列表的最佳方法是什么? 我在 CLR 过程中使用 C# 来获取和插入数据。 我正在尝试将计算机对象的信息从 Active Director…
动态调用方法时的性能差异
这两个示例方法调用之间是否存在很大的性能差异? SampleClass sc = new SampleLib.SampleClass(); sc.DoSomething("Hello"); dynamic dyn = someAsse…
这段代码有什么不安全的地方?
我正在学习 CLR 中的托管和非托管代码。 所以我用 C# 中的 C 风格指针编写了这个示例: unsafe static void Main(string[] args) { int x; int* y; y …
为什么 Int32.MinValue - 1 返回 Int32.MaxValue?
当我执行以下代码时,我(对我来说)出现了一些意想不到的行为。 int i = Int32.MinValue; i--; if (i == Int32.MaxValue) { Console.WriteLine("i ==…
为什么以下陈述显然是错误的,但评估为正确?
我有以下代码片段 Addresses addresses = new Addresses(); AddressInfo addr = addresses.GetAddressFromID(csTestSecurityToken, addrID); addr.Add…
将泛型类型参数显式转换为任何接口
在泛型常见问题解答:最佳实践中说: 编译器将允许您显式强制转换任何接口的通用类型参数,但不是类: interface ISomeInterface {...} class SomeCla…
C# CLR/编译问题
我昨天发布了这个问题询问关于将 ASP.NET 应用程序部署到 .NET 3.5 目标服务器的 C# 4 客户端,以及服务器上的 C# 3 或客户端上的 C# 4 编译的内容。 …
“对象已断开连接或在服务器上不存在”例外
我需要在我的应用程序中使用跨应用程序域调用,有时我会遇到此 RemotingException: 对象“/2fa53226_da41_42ba_b185_ec7d9c454712/ygiw+xfegmkhdinj7…
使用 CLR 的 SSIS 脚本组件
我们将 SSIS 与 SQL Sever 2005 / VS 2008 一起使用。 我的同事坚持认为我们不能在 SSIS 包内使用脚本组件,因为这会将可执行代码引入到进程中,然后…