【问题标题】:Is there a way to create a null value for .NET outside C#? [closed]有没有办法在 C# 之外为 .NET 创建空值? [关闭]
【发布时间】:2011-09-27 20:55:55
【问题描述】:

我在第 3 方成像应用程序中使用 .NET 支持,它允许使用 .NET 程序集。唯一的问题是您必须使用完全限定名称来调用/创建事物,例如:

NewDotNetObject "System.Object";
NewDotNetObject "System.Drawing.Color" 1 2 3;
(NewDotNetMethodCall "System.Math").Abs -45;
...

我正在尝试使用需要传递null 值的方法。但我不知道null 的完全限定名称。

可以这样创建null 值吗?

【问题讨论】:

  • 我相信这是您的第 3 方成像应用程序必须解决的问题。当然,它提供了编码 null 值以供 .NET 调用使用的方法,对吧?
  • 这看起来像是一种包装语言,它必须为 null 定义一个符号。您的样本似乎不完整。
  • 谢谢大家,我也这么认为,但它的 Null 值似乎不同。我可能需要更深入地挖掘,但想检查以防万一。
  • 如果您识别第三方成像应用程序,或者至少识别它使用的语言,这可能会有所帮助。
  • 我愿意,但它是专有软件。

标签: c# .net interop


【解决方案1】:

不知道这是否适合您,但有 System.DBNull 表示没有数据。

或者你可以使用空指针吗?

System.IntPtr.Zero

【讨论】:

  • 谢谢,可以,空指针和空值一样吗? .NET 会识别这一点吗?
  • 是的,没错.. IntPtr.Zero 在这里不是正确答案,see this link
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-10-15
  • 1970-01-01
  • 2021-10-18
  • 2016-09-06
  • 1970-01-01
  • 1970-01-01
  • 2015-06-05
相关资源
最近更新 更多