Мы работаем над предоставлением сборки для COM.
Среди прочего, мы часто используем значения, допускающие значение NULL, такие как 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; }
}
Проблема в том, что нам нужен способ передавать "null" туда и обратно через COM. Использование числа, такого как -1 или 0, не будет работать, потому что это также допустимые значения.
Нам приходится использовать значения NULL, потому что они изначально взяты из нашей схемы базы данных.
Nullable<T>
является структурой? - person Cecil Has a Name   schedule 01.01.2010