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

Sponsored by

Willkommen im Forum Archiv.
Einträge sind hier nicht mehr möglich, aber der Bestand von 12 Jahren SharePoint-Wissen ist hier recherchierbar.




.aspx Dateien Hochladen via Powershell

Unbeantwortet Dieser Beitrag hat 3 Antworten

Ohne Rang
282 Beiträge
MStel erstellt 2 Juli 2015 09:48
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Da ich nun seit 3 Tagen an einem Problem hänge versuche ich hier nun mit vielen Hintergrundinformationen eine Lösung zu finden.

Ich entwickle ein PowerShell Skript um eine Website zu erstellen, da dieses für die Installation an einem anderen Standort vorgesehen und im Projektplan gewünscht ist.
Auf dieser Website muss ein Content Editor Webpart hinzugefügt werden.
Das habe ich über Skript nicht hin bekommen(eine Fehlermeldung vonwegen XML Serializer können nicht erstellt werden), also war mein nächster Ansatz, den Inhalt der Default.aspx so zu erweitern das die Einbindung des Webparts im Code steht.(das habe ich ohne Skript getestet, und es funktionierte)
Allerdings komme ich auch nicht an den Code der Default.aspx beziehungsweise ist mir es dank Read-Only nicht gestattet Inhalte zu ändern(powershell), außerdem wurde mir im Forum davon abgeraten die Default.aspx zu verändern.
Anschließend wollte ich nun eine eigene .aspx Seite hochladen und als Homepage deklarieren.(was eine saubere Lösung darstellt)
Mithilfe des SharePoint Designers kann man aspx Seiten einfach per Drag and Drop an die entsprechende Stelle ziehen und als Homepage deklarieren, mit PowerShell ist es allerdings auch wieder ganz schön kompliziert eine .aspx Datei hochzuladen.

Kann mir wer helfen, entweder eine aspx Seite in eine Bibliothek/Liste hochzuladen, oder den Inhalt der Default.aspx zu verändern? (auch wenn es nicht sauber gelöst ist)

Vielen dank im Vorraus

Alle Antworten

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 2 Juli 2015 10:32
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Ich kann Dir leider keine konkrete Lösung geben, möchte aber die Sache mit dem Bearbeiten der Standardseite klarstellen. Es ist unsauber, die Datei quasi als Textdatei zu öffnen und dann verändert wieder zu speichern. Das ist dasselbe, wie wenn man sie in SharePoint Designer im erweiterten Modus bearbeitet (was eine Warnmeldung auslöst). Es ist aber vollkommen in Ordnung auf der Seite ein Inhaltseditor-Webpart mit Inhalt zu platzieren und diesen Weg würde ich auch bevorzugen..

Ich habe das allerdings noch nicht per PowerShell getestet. Mit C# geht es über den SPWebPartManager sehr einfach und eigentlich sollte das in PowerShell genauso gehen.

Viele Grüße
Andi
af @ evocom de
Blog
Ohne Rang
282 Beiträge
MStel Als Antwort am 2 Juli 2015 14:41
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Es muss doch aber auch möglich sein Webpartseiten hochzuladen, diese haben doch auch .aspx als Endung?
Natürlich sind saubere Lösungen immer bevorzugt, aber die Projekte müssen eben irgendwann fertig werden.

Die einzige andere Ursache dafür das ich meinen Webaprt nicht hochladen kann, könnte sein das meine eigenen Webparts lokal auf der Maschine liegen, und der Content Editor ja beim SharePoint mitinstalliert wird und sich im Webpartkatalog befindet. Ich würde diesen ja herunterladen und anschließend wieder hinzufügen wie meine Webparts, allerdings ist dieser keine Vorlage (.wsp) sondern eine Datei vom Typ .dwp. Das bedeutet die exakt identische Ausgangssituation wie bei meinen eigenen Webparts werde ich nicht hinbekommen. Die Methode AddWebpart wird doch aber immer gleich überladen/aufgerufen, daher sollte sich doch da nichts ändern. Zur Kontrolle habe ich die Variablen in der Shell ausgeben lassen, da es ein neues Objekt ist ,ist logischerweise die ID leer. Die restlichen Werte sind jedoch gesetzt wie sie sein sollten.
Aber wieso die Methode $File.OpenRead() Bilder und Textdateien anders behandeln als Dateien mit .aspx-Dateiendung?
Scheitern tut es letztendlich beim Add Befehl, wobei die XML Serializer Fehlermeldung nicht gerade detailliert ist, da dieser in der Attributliste des Webparts & Webpartmanagers nicht erscheint.
Habe auch einmal im LOGS Verzeichnis nachgesehen, aber nichts was einem wirklich weiterhilft.

 

Ohne Rang
282 Beiträge
MStel Als Antwort am 6 Juli 2015 08:56
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Ich würde diesen Beitrag gerne nocheinmal hervorheben, da bis jetzt noch keine Lösung gefunden wurde.