SharePointCommunity
Die deutschsprachige Community für SharePoint, Microsoft 365, Teams, Yammer und mit Azure

SPWeb.Url ändern

bewertet von 0 Usern
Beantwortet Dieser Beitrag hat 1 Geprüfte Antwort | 8 Antworten | 2 Followers

Top-75-Beitragsschreiber
163 Beiträge
Markus Sallmutter erstellt in 26 Nov 2012 15:13

Hallo Community!

Ich stehe vor dem Problem, dass ich bei einer Vielzahl von webs die Url ändern muss. Da es sich um mehrere 100 Webs handelt, dachte ich natürlich sofort an die API. Ich versuche nun schon einige Zeit eine Lösung zu finden wie dies möglich ist, komme aber leider nicht weiter.

Über die Oberfläche ist das ändern der Url ja sehr einfach möglich unter Title,Description and Icon. Dort kann man via Web Site Adress einfach die Url des Webs ändern.

Kennt irgendjemand einen Weg dies über die API zu bewerkstelligen? Bin für jede Antwort/Hilfe/Hinweis dankbar :)

Mfg
Markus

Beantwortet Geprüfte Antwort

Top-10-Beitragsschreiber
19.041 Beiträge

Markus Sallmutter:
Über die Oberfläche ist das ändern der Url ja sehr einfach möglich unter Title,Description and Icon. Dort kann man via Web Site Adress einfach die Url des Webs ändern.

Versucht habe ich es nicht, aber ich habe mir kurz den Code genau dieser Seite angeschaut (Microsoft.SharePoint.ApplicationPages.ProjectSettingsPage) und dort wird wohl SPWeb.Name geändert. Versuche das doch mal.

Viele Grüße
Andi
af @ evocom de
Blog

Alle Antworten

Top-10-Beitragsschreiber
19.041 Beiträge

Markus Sallmutter:
Über die Oberfläche ist das ändern der Url ja sehr einfach möglich unter Title,Description and Icon. Dort kann man via Web Site Adress einfach die Url des Webs ändern.

Versucht habe ich es nicht, aber ich habe mir kurz den Code genau dieser Seite angeschaut (Microsoft.SharePoint.ApplicationPages.ProjectSettingsPage) und dort wird wohl SPWeb.Name geändert. Versuche das doch mal.

Viele Grüße
Andi
af @ evocom de
Blog
Top-75-Beitragsschreiber
163 Beiträge

Wow vielen Dank für die schnelle Antwort Andi!

Ja du hast recht die Funktion, die über die Oberfläche möglich ist, wird mit SPWeb.Name geändert. Der Titel ist dann SPWeb.Title
Allerdings würde ich gerne eine radikalere Änderung der Url vornehmen.

Mit dem SPWeb.Name kann ich z.B. http://test/test1 in http://test/test2 ändern aber nicht in http://test/test1/test2

Kennt jemand eine Möglichkeit die Url wirklich gegen eine neue auszutauschen? Eventuell auch von einer Sitecollection in eine andere.

Der einzige mit bekannte Weg wäre ein Export via Powershell und ein Import mit der neuen url, aber ich würde es gerne in einer ConsoleApplication realisieren.

Mfg
Markus

Top-10-Beitragsschreiber
19.041 Beiträge

Beim SharePoint Server (nicht Foundation) gibt es über die Strukturansicht die Möglichkeit Websites umzuhängen. Du kannst ja mal nachschauen, welcher Code dahintersteckt. Aber auch das geht nur innerhalb einer SiteCollection. Darüberhinaus bleibt nur Export/Import.

Viele Grüße
Andi
af @ evocom de
Blog
Top-75-Beitragsschreiber
163 Beiträge

Danke für den Tipp Andi!

Ich habe nochmals die Spezifikation angesehen und erkannt, dass es mir reicht den SPWeb.Name zu ändern.

Ich würde es aber dennoch interessant finden, wie man das Web sitecollection weit verschieben kann. Kannst du mir eine kurze Anleitung geben, wie ich mir denn den Code genau dieser Seite anschauen kann? Damit könnte ich eventuell auch in Zukunft schneller Lösungen für meine Probleme finden.

Danke im voraus
Markus

Top-10-Beitragsschreiber
19.041 Beiträge

Nach dem, was Du oben geschrieben hast, dachte ich, Du wüßtest wie das geht ;-)

Gehe im Browser auf die Seite, deren Funktion Dich interessiert und schaue Dir die URL an. Meistens sind das sog. Application Pages, die im Layouts-Ordner liegen. In der URL erscheint das als _layouts und im Dateisystem findet man die unter 14/Template/Layouts. Jetzt gehst Du in diesen Ordner und öffnest die entsprechende aspx-Datei z.B. mit Notepad. In der <@ Page Direktive schaust Du nach, von welcher Klasse diese Seite abgeleitet ist. Die sind meist im Namespace Microsoft.SharePoint.ApplicationPages und der befindet sich in einer gleichnamigen Assembly. Die Assembly kannst Du jetzt mit dem Tool Deiner Wahl untersuchen, z.B. mit ILSpy.

Viele Grüße
Andi
af @ evocom de
Blog
Top-75-Beitragsschreiber
163 Beiträge

Vielen Dank für die Instruktionen ich werde das sobald ich Zeit habe gleich mal ausprobieren :)

Top-500-Beitragsschreiber
58 Beiträge

@Andi: darf man das überhaupt in der Öffentlichkeit schreiben? ;-)

@Markus: Hallo ;-). du kannst das übrigens auch relativ einfach über die Powershell machen. Wenn du z.B. eine URL einer ganzen Sitecollection ändern willst -> http://jshidell.com/2012/06/26/moving-sharepoint-2010-site-collections-between-managed-paths-using-powershell/ 

lg, flo

Top-10-Beitragsschreiber
19.041 Beiträge

sharxx:
@Andi: darf man das überhaupt in der Öffentlichkeit schreiben? ;-)

Ganz ehrlich: keine Ahnung. Verpetz mich bitte nicht :-)

Allerdings wird ja dadurch nichts verändert. Man schaut sich das ja nur an, aus reiner Neugier.

Viele Grüße
Andi
af @ evocom de
Blog
Seite 1 von 1 (9 Elemente) | RSS