Sharepointentwicklung ohne IISReset

Webparts werden oftmals im GAC abgelegt, da dort die erforderlichen Sicherheitseinstellungen und die Versionsverwaltung vorhanden sind sind. Dadurch ist allerdings während der Entwicklung ein häufiger iisreset erforderlich. Einfacher ist es die Assemblys während der Entwicklung im Bin - Ordner der Sharepoint Webanwendung abzulegen.


Folgende Schritte sind dafür erforderlich:


  1. Referenz auf System.Security zum Webpart-Projekt hinzufügen und folgenden Eintrag in die Assembly - Propertys einfügen
    [assembly: System.Security.AllowPartiallyTrustedCallers()]


  2. <SafeControls> Eintrag in der web.config der Sharepoint Anwendung wie beim GAC - Deployment eintragen
    Beispiel:
    <SafeControl Assembly=”TestLib, Version=1.0.0.0, Culture=neutral, PublicKeyToken=2b2w44465f9g8ec4″ Namespace=”Mein.Test.Lib” TypeName=”*”
    Safe=”True” />


  3. <securityPolicy> Eintrag wie folgt ergänzen:


    <securityPolicy>

    […]

    <trustLevel name=”Full” policyFile=”internal”/>

    </securityPolicy>

  4. Jetzt nur noch den Trust - Level auf Full legen:

    <trust level="Full" originUrl="" />



Fertig.

Vorteil dieser Lösung: während der Entwicklung ist kein iisreset mehr nötig.
Wenn Sie jetzt noch über die PostBuildEvents ein Copy der erzeugten Assembly veranlassen
copy “$(TargetPath)” "C:\inetpub\wwwroot\wss\VirtualDirectories\80\bin"

können sie nach dem Kompilieren sofort den neuen Code testen.

Keine Kommentare: