Я хочу взять данные из URL-адреса sharepoint, и я получаю весь список в виде дерева.Наконец, я хочу получить данные из этого списка, когда я нажимаю на дерево и получаю эту ошибку;«Web» не содержит определения «GetList», и метод расширения «GetList», принимающий первый аргумент типа «Web», не найден (отсутствует директива using или ссылка на сборку?)
Как я могу решить эту проблему?
Мой код;
private void Form_Load(object sender, EventArgs e)
{
using (ClientContext spContext = new ClientContext(@"http://mysite/username/"))
{
Web spWeb = spContext.Web;
ListCollection spLists = spContext.Web.Lists;
spContext.Load(spLists);
spContext.ExecuteQuery();
List<Items> spListNames = new List<Items>();
foreach(List listItem in spLists)
{
spListNames.Add(new Items {Title=listItem.Title }); ;
}
treeList1.DataSource = spListNames;
}
}
private void treeList1_Click(object sender, EventArgs e)
{
var Title = treeList1.FocusedNode[treeList1.Columns[0]].ToString();
BindGridFromSharePoint(Title);
}
private void BindGridFromSharePoint(string Title)
{
using (ClientContext spContext = new ClientContext(@"http://mysite/username/"))
{
Web spWeb = spContext.Web;
CamlQuery camlQuery = new CamlQuery();
camlQuery.ViewXml = "<View/>";
List spLists = spContext.Web.GetList(@"http://mysite/username/" + Title.Replace(" ", " %20"));
var spSelectedListItems = spLists.GetItems(camlQuery);
spContext.Load(spLists);
spContext.Load(spSelectedListItems);
spContext.ExecuteQuery();
DataTable dt = new DataTable();
foreach (var item in spSelectedListItems)
{
try
{
foreach (var item1 in item.FieldValues)
{
dt.Columns.Add(item1.Key, typeof(string));
}
}
catch (Exception)
{
// throw;
}
DataRow dr1 = dt.NewRow();
foreach (var item1 in item.FieldValues)
{
dr1[item1.Key] = item1.Value;
}
dt.Rows.Add(dr1.ItemArray);
}
gridControl1.DataSource = dt;
}
}
public class Items
{
public string Title { get; set; }
}