System.Reflection.Missing.Value做什么?

Mur*_*shi 18 c# system.reflection

我遇到了下面给出的代码

Object oMissing = System.Reflection.Missing.Value
oDataDoc = wrdApp.Documents.Open(ref oName, ref oMissing,
                    ref oMissing, ref oMissing, ref oMissing, ref oMissing,
                    ref oMissing, ref oMissing, ref oMissing, ref oMissing,
                    ref oMissing, ref oMissing, ref oMissing, ref oMissing,
                    ref oMissing);
Run Code Online (Sandbox Code Playgroud)

我不明白什么会反映出来.它会自动获得这样的价值观吗?

Pra*_*ash 10

它代表着null价值.注意null不等于Missing.Value

只是为了添加更多信息,正如您在下面的屏幕截图中看到的那样,Missing.Value不等于null,实际上是Missing类对象的新实例

在此输入图像描述

  • 如果传递此值,则Word API会认为没有为相应参数提供任何值.在VB.NET中,您可以避免发送您不感兴趣的值; 但早期的C#并不用于支持默认参数.因此,作为替代方案,正在使用_Missing.Value_.与null不同,Missing.Value允许API获取该参数的默认值(在其类中定义)并继续处理. (7认同)