Wenn Sie wissen wollen, wer Liste oder Bibliothek erstellt haben, müssen Sie Eigentum SPList.Author zu bekommen. Wie ich weiß, können Sie es nicht von JSOM bekommen.
Mein Rat für Sie ist, Ihre eigenen http Hanlder mit Logik auf der Serverseite zu entwickeln und es von Ajax anrufen. Beispielsweise übergeben Sie Argumente an Handler wie Web-URL (_spPageContextInfo.webAbsoluteUrl
), aktuelle Benutzeranmeldung oder ID (_spPageContextInfo.userId
) und in Handlerlisten im Web, vergleichen Sie den aktuellen Benutzer und Listenersteller. Schließlich geben Sie benötigte Listeninformationen zurück.
oder nur Web-Teil entwickeln und das Gleiche tun: iterate-Listen und vergleichen Sie es mit SPContext.Current.Web.CurrentUser
UPDATE:
Beispiel von C# -Code. Sie können es in Ihren Webpart oder Event-Handler einfügen. In diesem Code werden alle Listen auf SPWeb
iteriert und Listentitel gespeichert, die vom aktuellen Benutzer erstellt wurden.
private void GetLists()
{
using (SPSite site = new SPSite("{site_url}"))
{
using (SPWeb web = site.OpenWeb())
{
SPListCollection listCol = web.Lists;
List<string> currentUserLists = new List<string>();
foreach(SPList list in listCol)
{
if (list.Author.ID == SPContext.Current.Web.CurrentUser.ID)
{
currentUserLists.Add(list.Title);
}
}
}
}
}
Vielen Dank für die Antwort. Der Punkt ist, ich bekomme andere Listen, die kein Teil von Benutzern sind. Diese Listen sind in SharePoint Designer nicht einmal sichtbar und ich bin neu in der SharePoint-Welt. – Doro
Also, mein Vorschlag ist es, benutzerdefinierte Web-Part oder http-Handler zu entwickeln, die Listen von aktuellen oder bestimmten Benutzer, die Sie wollen, erstellt zurückgeben. Wenn es Ihr erster Entwicklungsvorgang für SharePoint ist, lesen Sie bitte update in meinem Post und gehen Sie zu msdn für [walkthrough erstellen des Webparts] (https://msdn.microsoft.com/en-us/library/ee231551 (v = vs.120) .aspx). –