簡體   English   中英

如何“獲取SharePoint列表項目(在內部)的項目URL”並將其添加到數據表中

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM