jon*_*ers 10 .net c# com nullable
我们正在努力将程序集暴露给COM.
除此之外,我们频率使用可空值,例如long?,DateTime?等.这些是泛型类型,不能暴露给COM.
什么是COM的这些数据类型的良好替代品?
我们尝试过以下方法:
//Original CustomerID property in class
public long? CustomerID
{
get;
set;
}
//Explicit COM interface
long IComInterface.CustomerID
{
get { return CustomerID.GetValueOrDefault(); }
set { CustomerID = value; }
}
Run Code Online (Sandbox Code Playgroud)
问题是,我们需要一种通过COM来回传递"null"的方法.使用-1或0之类的数字将不起作用,因为它们也是有效值.
我们不得不使用nullables b/c这些最初来自我们的数据库模式.