Допустим, у меня есть код ниже:
public class ContactDTO
{
public string Email {get; set;}
public decimal? ExchangeRate {get; set;}
}
......
var contacts = crm.GetEntities("contact")
var cList = new List<ContactDTO>();
foreach(contact in contacts)
{
clist.Add(new ContactDTO
{
Email = contact.GetPropertyValue<string>("emailaddress1");
ExchangeRate = contact.GetPropertyValue<decimal>("exchangerate");
}
}
В приведенном выше коде, если обменный курс равен нулю в динамике, я собираюсь вернуть значение по умолчанию для десятичного числа, которое не является тем, что я хочу (я хочу знать, является ли оно нулевым). Если бы я использовал:
contact.GetPropertyValue<decimal?>("exchangerate")
Должно ли это вернуть ноль, если в динамике он нулевой? Я пробовал это в других сценариях, и он всегда возвращает значение по умолчанию для типа значения. Как я могу получить нулевое значение, чтобы убедиться, что мое свойство объекта dto равно нулю?