We are working on exposing an assembly to COM.
Among other things, we frequency use nullable values such as long?, DateTime?, etc. These are generic types and can't be exposed to COM.
What is a good substitute for these data types for COM?
We have tried the following:
//Original CustomerID property in class
public long? CustomerID
{
get;
set;
}
//Explicit COM interface
long IComInterface.CustomerID
{
get { return CustomerID.GetValueOrDefault(); }
set { CustomerID = value; }
}
The problem is, we need a way to pass "null" back and forth through COM. Using a number like -1 or 0 won't work because these are valid values as well.
We are having to use nullables b/c these originally came from our database schema.