假设我有以下代码:
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");
}
}
在上面的代码中,如果 Dynamics 中的汇率为空,我将取回不是我想要的小数的默认值(我想知道它是否为空)。如果我要使用:
contact.GetPropertyValue<decimal?>("exchangerate")
如果它在 Dynamics 中为空,是否应该带回一个空值?我在其他场景中尝试过,它总是发回值类型的默认值。我怎样才能得到空值,以便我可以确保我的 dto 对象属性为空?