检查是否检索到数据 - CRM
Check if data is retrieved - CRM
我正在从 CRM 中检索数据。我想从 quotedetail
中检索几个字段。其中之一是 int
字段 ad_discountpercent
.
此字段不必有值。
我需要检查是否从该字段中检索到某些值,如果没有值,则给它一个默认值 0
。
这是我的代码:
string fetch1 = @"
<fetch count='50' >
<entity name='quotedetail' >
<attribute name='manualdiscountamount' />
<attribute name='priceperunit' />
<attribute name='ad_discountpercent' />
<attribute name='quantity' />
<attribute name='extendedamount' />
</entity>
</fetch>";
EntityCollection result = service.RetrieveMultiple(new FetchExpression(fetch1));
foreach (var c in result.Entities)
{
if(...)
}
我应该用什么代替 (...)
来查看是否检索到任何数据并提供默认值?如果你知道这两件事,那将会很有帮助。
如果您需要更多信息,请告诉我。
要访问字段值,您可以使用 GetAttributeValue<T>(string attribute logical name)
你的情况:
c.GetAttributeValue<Entity>("ad_discountpercent");
尚不清楚您是要更新 Entity
对象(即将其保存回 CRM)还是只需要处理该值。
if (!c.Attributes.Contains("ad_discountpercent"))
{
var newEntity = new Entity(c.LogicalName, c.Id)
newEntity["ad_discountpercent"] = 0; //replace 0 with your default value.
}
我正在从 CRM 中检索数据。我想从 quotedetail
中检索几个字段。其中之一是 int
字段 ad_discountpercent
.
此字段不必有值。
我需要检查是否从该字段中检索到某些值,如果没有值,则给它一个默认值 0
。
这是我的代码:
string fetch1 = @"
<fetch count='50' >
<entity name='quotedetail' >
<attribute name='manualdiscountamount' />
<attribute name='priceperunit' />
<attribute name='ad_discountpercent' />
<attribute name='quantity' />
<attribute name='extendedamount' />
</entity>
</fetch>";
EntityCollection result = service.RetrieveMultiple(new FetchExpression(fetch1));
foreach (var c in result.Entities)
{
if(...)
}
我应该用什么代替 (...)
来查看是否检索到任何数据并提供默认值?如果你知道这两件事,那将会很有帮助。
如果您需要更多信息,请告诉我。
要访问字段值,您可以使用 GetAttributeValue<T>(string attribute logical name)
你的情况:
c.GetAttributeValue<Entity>("ad_discountpercent");
尚不清楚您是要更新 Entity
对象(即将其保存回 CRM)还是只需要处理该值。
if (!c.Attributes.Contains("ad_discountpercent"))
{
var newEntity = new Entity(c.LogicalName, c.Id)
newEntity["ad_discountpercent"] = 0; //replace 0 with your default value.
}