Я хочу показать все поля определенного ListItem. Это включает в себя LookUpFields и ChoiceFields. Но мне кажется, что я могу показать Textfields, например Title. Как я могу показать все поля моего ListItem? Проблема в том, что я получаю сообщение об ошибке, когда пытаюсь показать другие поля списка, как я получил «Title», чтобы показать, как если бы строки, которые я вводил, не существовали как поля в этом списке. Но они существуют и населены ценностями! Что такое хороший способ показать пользовательские поля списка без получения ошибок ObjectReference? Также я получаю эту ошибку: данный ключ отсутствовал в словаре.Я не могу получить поля SharePoint ListItem
private void foo()
{
using (ClientContext context = new ClientContext(ApplicationContext.Current.Url))
{
_list = context.Web.Lists.GetByTitle("MyList").Title);
_items = _list.GetItems(CamlQuery.CreateAllItemsQuery());
context.Load(_items);
context.ExecuteQueryAsync(
new ClientRequestSucceededEventHandler(OnListItemsRequestSucceeded),
new ClientRequestFailedEventHandler(OnListItemsRequestFailed));
}
}
private void OnListItemsRequestSucceeded(Object sender, ClientRequestSucceededEventArgs args)
{
// this is not called on the UI thread
Dispatcher.BeginInvoke(ShowListItemDetails);
}
public void ShowListItemDetails()
{
foreach (ListItem i in _items)
{
TextBox_Details.Text += i["Title"].ToString() + Environment.NewLine;
// Now the rest of the fields of this item.
}
}
Редактировать: Что также является большой проблемой, я не могу заставить отладчик работать. Этот код работает как веб-часть Silverlight на локальном сайте Sharepoint. Я прикрепляю отладчик к iexplorer.exe, но он не сломается. Если бы я мог заставить отладчик работать, это действительно помогло бы.
И проблема на самом деле * что *? Что не так, когда вы сбрасываете больше полей? Какие проблемы вы испытываете при работе с нетекстовыми полями? –
Возможно, что Ондрей, возможно, означает, что вы должны дать нам ошибку, которую вы получаете при работе с нетекстовыми полями. Также: установите точку останова в вашем листе ListItem foreach, и вы можете получить доступ ко всем полям (просто чтобы увидеть, что они есть). –