[英]How to “Get the Item URL of the SharePoint List Item(On Premise) ” and to add it in the Data Table
我正在嘗試獲取SharePoint(本地)列表中項目的列表項目URL。 項目URL是否在“查找”中。 如果它存在於查找中,那么包含項URL(值)的查找的名稱(關鍵字)是什么。 幫助我根據需要將URL添加到數據表中。
我已經檢查了獲得SP列表項的結果得到的列表項集合。 有什么方法可以獲取列表項的URL。
System.Data.DataTable DT = new DataTable();
SP.List oList = SP_List.Web.Lists.GetByTitle(ListName);
CamlQuery cQuery = new CamlQuery();
cQuery.ViewXml = "@<View><RowLimit>10</RowLimit></View>";
ListItemCollection ListCollection = oList.GetItems(cQuery);
SP_List.Load(ListCollection);
SP_List.ExecuteQuery();
for (int i = 0; i < ColumnName.Length; i++)
DT.Columns.Add(ColumnName[i], System.Type.GetType("System.String"));
for (int i = 0; i < LookUp.Length; i++)
DT.Columns.Add(LookUp[i], System.Type.GetType("System.String"));
foreach (ListItem value in ListCollection)
{
DataRow dr = DT.NewRow();
for (int i = 0; i < ColumnName.Length; i++)
dr[ColumnName[i]] = value[ColumnName[i]].ToString();
for (int i = 0; i < LookUp.Length; i++)
dr[LookUp[i]] = (((Microsoft.SharePoint.Client.FieldUserValue)value[LookUp[i]])?.LookupValue).ToString();
DT.Rows.Add(dr);
這是當前的代碼,我必須獲取所需的值。 我還試圖在此數據表中添加“ Item URl”,幫助我獲取並將值添加到數據表中。
如果我對您的理解正確,那么您想要的只是列表項的網址? 您可以通過SP.ListItem.File.ServerRelativeUrl
訪問ServerRelativeUrl
即
ctx.load(listItem.File)
ctx.executequery()
console.log(listITem.File.ServerRelativeUrl)
(對不起,我是用jsom而不是csom編寫的,但是代碼幾乎一樣)
對於您要執行的操作,您的代碼看起來過於復雜。 我可能會考慮簡化它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.