• home
    • news & events
    • blog
  • über uns
    • projekte und referenzen
    • partner
    • produkte & technologien
    • offene jobs / stellen
    • veröffentlichungen
  • dienstleistungen & services
    • software design & architektur
    • software entwicklung
    • beratung / consulting
    • training, kurse und workshops
  • angebote
    • quick-starts
    • trainings und kurse
    • modulare sharepoint 2010 workshops
  • kontakt
"Wir sprechen SharePoint."
In Code und Klartext.
Seit über 100 Jahren.
Diesen Blog abonnieren
Subscribe in NewsGator Online Add to My AOL
Add to Google Reader or Homepage Add to netvibes

Aktuelle Posts

Ribbon Designer für SharePoint und Office365
Mapping Boolean Properties in a Custom Nintex Workflow Action
SharePoint Designer, Literals und das __designer:Preview Ärgernis
Spellcheck: Anpassen (Customizing) des Content Editors
Access Services - the Big Picture

Archiv

Mai 2012 (1)
April 2012 (5)
März 2012 (5)
Februar 2012 (7)
Januar 2012 (4)
Dezember 2011 (2)
November 2011 (10)
September 2011 (3)
August 2011 (7)
Juli 2011 (1)
Juni 2011 (3)
Mai 2011 (6)
April 2011 (5)
März 2011 (8)
Februar 2011 (8)
Januar 2011 (4)
Dezember 2010 (5)
November 2010 (7)
September 2010 (6)
August 2010 (2)
Juli 2010 (11)
Juni 2010 (13)
Mai 2010 (11)
April 2010 (4)
März 2010 (6)
Februar 2010 (2)
Januar 2010 (6)
Dezember 2009 (4)
November 2009 (13)
Oktober 2009 (17)
September 2009 (2)
Juli 2009 (2)
März 2009 (2)
Januar 2009 (1)

1stQuad ist Microsoft Certified Gold Partner und bietet SharePoint und .NET Produkt- und Projekt-Kompetenz, -Erfahrung und -Know-How für Entwicklung, Architektur, Beratung, Schulung, Training und Kurse in Schweiz sowie Deutschland und Östereich.
1stQuad ist MatchPoint Partner und bietet MatchPoint Produkt- und Projekt-Kompetenz, -Erfahrung und -Know-How für Entwicklung, Architektur, Beratung, Schulung, Training und Kurse in Schweiz sowie Deutschland und Östereich.
1stQuad ist Nintex Partner und bietet Nintext SharePoint Workflows Produkt- und Projekt-Kompetenz, -Erfahrung und -Know-How für Entwicklung, Architektur, Beratung, Schulung, Training und Kurse in Schweiz sowie Deutschland und Östereich.
1stQuad ist Balesio Gold Partner und bietet SharePoint FILEMinimizer Produkt- und Projekt-Kompetenz, -Erfahrung und -Know-How für Entwicklung, Architektur, Beratung, Schulung, Training und Kurse in Schweiz sowie Deutschland und Östereich.
1stQuad Solutions ist Kentico Certified Solution Partner und bietet Produkt- und Projekt-Kompetenz, -Erfahrung und -Know-How für Entwicklung, Architektur, Beratung, Schulung, Training und Kurse in Schweiz sowie Deutschland und Östereich.
© 2011 1stQuad Solutions
Alle Rechte vorbehalten
> Impressum
Wir bieten Microsoft SharePoint und .NET Projekt- und Produkt-Know-how, Kompetenz und Erfahrung für Entwicklung, Architektur, Beratung, Schulung, Training und Kurse in Zürich, Bern, Basel, Schweiz sowie Deutschland und Östereich.

Blog > November 2011

Assembly Bindings bei stsadm

Die Option preupgradecheck des stsadm Befehls liefert oft Missing Web Parts, obwohl diese einwandfrei funktionieren. Dieser Post zeigt, wie man stsadm konfiguriert, so dass man zuverlässige Reports bekommt.

Veröffentlicht am 12.11.2011 23:36:03 von Reiner Ganser mit 0 Kommentar(en)

Wir sind im Moment in etlichen Migrationsprojekten involviert und unterstützen unsere Kunden. Anscheinend sind viele Kunden gerade jetzt dabei auf die SharePoint 2010 Version zu welchseln. Deshalb ist dieser Tipp sicherlich für den Einen oder Anderen interessant.

Die Option des preupgradecheck des Befehls stsadm (stsadm –o preupgradecheck) ist eine wichtige Möglichkeit, um die Upgrade Fähigkeit einer SharePoint 2007 Installation auf SharePoint 2010 zu prüfen und zu untersuchen. Der Befehl erzeugt umfangreiche Reports, die auch fehlende Komponenten und Datenbank Inkonsistenzen aufführen. Oftmals erhält man aber eine grosse Anzahl von „Missing“ Webparts, obwohl diese einwandfrei funktionieren.
Beispiel:

• Id = 94e9c166-264a-f84b-2377-bccefb8b3771, Type = Unknown, Reference = 1279, Status = Missing
• Id = f2c50a02-9894-4ace-bb3f-4146a24cd940, Type = Unknown, Reference = 426, Status = Missing
• Id = bc877bd0-b48e-3165-7c9e-1e2f98c2a42a, Type = Unknown, Reference = 22, Status = Missing
• Id = 08ec17b7-15a1-b9a2-57f0-96271bb83636, Type = Unknown, Reference = 1021, Status = Missing
• Id = 5bcfa7e9-c525-2397-4f95-fe132713edc1, Type = Unknown, Reference = 268, Status = Missing
• Id = 9f030319-fa14-b625-4892-89f6f9f9d58b, Type = Unknown, Reference = 40, Status = Missing
• Id = 74bd016c-baa0-14a8-d5d8-b75dc7e6f429, Type = Unknown, Reference = 513, Status = Missing
• Id = d839800d-03b8-abd7-55f8-b6930f0b5abe, Type = Unknown, Reference = 900, Status = Missing
• Id = 34775302-228e-4263-e421-a175e9ebeb06, Type = Unknown, Reference = 194, Status = Missing
• Id = b25f6a69-5a77-b58f-30d7-22b8a4317afc, Type = Unknown, Reference = 1069, Status = Missing
• Id = 669602d9-e116-ccb8-eea3-e37ad589b14b, Type = Unknown, Reference = 214, Status = Missing
• …

In vielen Fällen liegt dies daran, dass der stsadm Befehl ein eigenständiges Programm ist und die Einstellungen der web.config Dateien nicht verwendet. In den web.config Dateien sind oft die sog. Assembly Bindings definiert, welche die Verwendung einer älteren .NET Framework Version auf die mit SharePoint verwendete Version .NET 3.0/3.5 „umbiegt. Ein Beispiel ist der Stock Quote Webpart von Bamboo. Er referenziert die System.Web.Extensions (also die Ajax Erweiterung) in der Version 1.0. Durch sog. Assembly Bindings in der web.config der Webanwendung verwendet der Webaprt dann die installierte .NET Version. Der Befehl stsadm kennt diese Eintragungen der web.config natürlich nicht.

Abhilfe schafft hier die Erstellung einer Konfigurationsdatei für den stsadm Befehl. Der Namen der Konfigurationsdatei ist stsadm.exe.config. Hierin fügt man die notwendigen Assembly Bindings durch Kopieren aus der web.config ein. Beispielsweise bewirken die folgenden Eintragungen, dass Zugriffe auf die System.Web.Extensions Assembly der Versionen 1.0.0.0-1.1.0.0 auf die .NET Frameweotk Version 3.5.0.0 umgebogen wird:

<?xml version="1.0"?>
<configuration>
  <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="System.Web.Extensions" publicKeyToken="31bf3856ad364e35" />
        <bindingRedirect oldVersion="1.0.0.0-1.1.0.0" newVersion="3.5.0.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Web.Extensions.Design" publicKeyToken="31bf3856ad364e35" />
        <bindingRedirect oldVersion="1.0.0.0-1.1.0.0" newVersion="3.5.0.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="RadWebParts" publicKeyToken="1f131a624888eeed" culture="neutral" />
        <bindingRedirect oldVersion="1.0.0.0-3.9.9.0" newVersion="4.0.0.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="RadEditorSharePoint" publicKeyToken="1f131a624888eeed" culture="neutral" />
        <bindingRedirect oldVersion="1.0.0.0-5.7.3.0" newVersion="5.8.4.0" />
      </dependentAssembly>
    </assemblyBinding>
  </runtime>
</configuration>

Danach sind die Missing Webparts im Ausgabe Report des Befehls „stsadm –o preupgradescheck „ verschwunden. Das Beispiel bezog sich dabei auf die Verwendung der Assembly System.Web.Extensions. Kann aber genauso gut für andere Assemblies angewendet werden. Zusätzlich kann man den folgenden Eintrag mit aufnehmen, damit die jeweilige Assembly nicht im lokalen Bin-Pfad gesucht wird, sondern die Version im Assembly Cache verwendet wird:

<probing privatePath="bin;_app_bin" />
 
Durch die oben beschriebenen Massnahmen lösen sich oftmals fehlende Referenzen sehr schnell auf.

Kommentar
Dieser Blog-Eintrag wurde noch nicht kommentiert.
Kommentar hinterlassen



 Security code
Zurück, Seite drucken