У меня есть следующий код:
SPQuery oQuery = new SPQuery();
oQuery.Query = @"<Query>
<Where>
<And>
<Eq>
<FieldRef Name='PublishToSM' />
<Value Type='Boolean'>1</Value>
</Eq>
<IsNull>
<FieldRef Name='SMUpdateDate' />
</IsNull>
</And>
</Where>
</Query>";
SPListItemCollection collListItems = list.GetItems(oQuery);
NevCoSocialMedia.NevCoFacebook fb = new NevCoSocialMedia.NevCoFacebook();
foreach (SPListItem oListItem in collListItems)
{
if (oListItem.Fields.ContainsField("PublishToSM") && Convert.ToBoolean(oListItem["PublishToSM"]) == true)
{
.
.
.
Мой вопрос: зачем мне нужно последнее if
заявление? Если у меня нет этого, он выдаст ошибку, сообщающую, что идентификатор не существует, когда он пытается сделать oListItem["PublishToSM"]
. Это кажется невозможным, так как мой CAML-запрос проверяет, что он имеет соответствующее значение ...