So rufen Sie alle ContentTypes aus einer Websitesammlung in einer SharePoint-Farm ab. Denken Sie daran, ich möchte dies mit dem SharePoint-Objektmodell tun. Jede Hilfe wird geschätzt.So erhalten Sie alle ContentTypes aus einer Websitesammlung in einer SharePoint-Farm
Antwort
Es kann wie folgt durchgeführt werden. Beispiel: Wenn Sie einen Inhaltstyp "Produkt" in einer Unterwebsite haben, wird der obige Code ihn finden, aber Sie können ihn nicht im Stammweb verwenden, da er auf einer niedrigeren Ebene definiert ist.
Versuchen Sie dieses: urWeb.AvailableContentTypes
Dieses es für alle Typen in allen SPWeb die in einer Website tun. Beachten Sie, dass dies zu Duplikaten führt.
public void ListContentTypes(string siteUrl)
{
try
{
using (SPSite site = new SPSite(siteUrl))
{
using (SPWeb web = site.OpenWeb())
{
ListContentTypes(web);
}
}
}
catch (Exception ex)
{
// add some proper error handling here
}
}
public void ListContentTypes(SPWeb web)
{
foreach (SPContentType ct in web.ContentTypes)
{
// do whatever you want to do with the content type here
}
foreach (SPWeb subWeb in web.Webs)
{
try
{
ListContentTypes(subWeb);
}
finally
{
if (subWeb != null)
{
subWeb.Dispose();
}
}
}
}
alle Inhaltstypen Dies wird finden, die in der Websitesammlung vorhanden ist, aber denken Sie daran, dass nicht alle Inhaltstypen in der gesamten Websitesammlung zur Verfügung stehen werden:
public void GetContentTypes()
{
string siteUrl = "Add site url here";
using (SPSite site = new SPSite(siteUrl))
{
foreach (SPWeb web in site.AllWebs)
{
foreach (SPContentType item in web.ContentTypes)
{
Debug.WriteLine(item.Name);
}
foreach (SPList list in web.Lists)
{
foreach (SPContentType item in list.ContentTypes)
{
Debug.WriteLine(item.Name);
}
}
web.Dispose();
}
}
}
Ich muss alle Webs schauen, nicht nur das Rootweb! –
@Anna Karin, ich habe es aktualisiert, um alle Webs zu tun –
Sie müssen jedes SPWeb mit site.AllWebs –
- 1. Issus Löschen einer Websitesammlung
- 2. So erhalten Sie Textwerte aus einer Listenansicht
- 3. So erhalten Sie Zahlen aus einer Zeichenfolge
- 4. So erhalten Sie alle Websitesammlungen in einer Webanwendung
- 5. Wie erhalten Sie alle Werte aus einer Bitmap in Redis?
- 6. Erhalten Sie alle verfügbaren Kulturen aus einer RESX-Dateigruppe
- 7. So entfernen Sie alle Grammatik aus einer Zeichenfolge in Java
- 8. Erhalten Sie alle TextBoxen in einer Seite
- 9. Erhalten Sie alle Dokumente aus einer Sammlung mit Pymongo
- 10. Erhalten Sie alle unterstützten Kulturen aus einer Satellitenbaugruppe
- 11. So erhalten Sie den Tabellennamen einer Spalte aus SqlDataReader
- 12. PIG: Erhalten Sie alle Tupel aus einer gruppierten Tasche
- 13. Lokalisieren einer SharePoint-Websitesammlung zur Laufzeit?
- 14. Lua: So erhalten Sie eine Dezimalzahl aus einer Zeichenfolge?
- 15. So erhalten Sie Spaltentypen einer vorhandenen, benannten Tabelle aus SQLAlchemy
- 16. So erhalten Sie ein Attribut aus einer Liste
- 17. Java: So erhalten Sie das Thumbnail aus einer Datei
- 18. So erhalten Sie Zeilennummer aus Textdatei nach einer if-Anweisung
- 19. So erhalten Sie alle Daten aus der Kategorie in Codeigniter
- 20. So erhalten Sie eine Zeile aus einer Textdatei über findstr
- 21. So entfernen Sie alle Leerstellen aus einer bestimmten Textdatei
- 22. So entfernen Sie alle Zeichen aus einer Zeichenfolge
- 23. So erhalten Sie eine bestimmte Zeile aus einer Datei
- 24. So erhalten Sie Daten aus einer Tabelle, die verbunden wurde
- 25. So erhalten Sie eine Seiten-ID aus einer Datei header.php
- 26. So erhalten und verketten Sie Werte aus einer Spalte basierend auf einer anderen Spalte in Excel
- 27. Erhalten Sie alle IPs aus Textdatei, die in einer Datei sind, die alle Subnetze enthält
- 28. Legen Sie alle Zeilen aus einer Tabelle in einer anderen
- 29. Neuer verwalteter Pfad vor einer Websitesammlung
- 30. Erhalten Sie alle Datensätze in einer has_many durch Beziehung aus einer Sammlung von Datensätzen
Enthält es alle verfügbaren installierten ContentTypes ausgewählt/nicht ausgewählt und verwendet/nicht verwendet? –
ja ... versuchen Sie es und lassen Sie mich wissen – Grace
Das Problem mit dieser Eigenschaft ist, dass es Ihnen nicht die Inhaltstypen, die auf einer niedrigeren Ebene definiert sind. Daher werden nicht alle Inhaltstypen aus einer Websitesammlung zurückgegeben. Es gibt Ihnen die Inhaltstypen, die in einem bestimmten Web und allen übergeordneten Webs definiert sind. –