iSven

Unwichtiges nach Relevanz sortieren...

Images in App_GlobalResources

Mit ASP.NET 2.0 halten eine Menge neue Ordner Einzug in Webprojekte. Der scheinbar interessante Ordner App_GlobalResources sollte allerdings nicht zur Ablage von Images (jpeg, gif, etc.) verwendet werden. Dies funktioniert zwar in Visual Studio 2005 samt Anzeige wunderbar, doch im Webbrowser werden die Images nicht angezeigt, denn der IIS schützt den Ordner App_GlobalResources (und App_LocalResources) vom Download. In diesen Ordnern sollten nur Dateien abgelegt werden, die auf dem Server verarbeitet werden (z.B. resx-Dateien).

MSDN Tech Talk

Gestern war ich mal wieder bei einem MSDN Tech Talk. Thema:

Softwareverteilung in Unternehmen - Neue Wege mit der ClickOnce Technologie und .NET 2.0

Mittels ClickOnce lassen sich .NET Anwendungen (über einen Trick auch nicht .NET Anwendungen) sicher auf den Client bringen und über einen eigenen Mechanismus auf dem aktuellsten Stand halten. Verblüfft war ich über die Technik hinter ClickOnce: Einen ähnlichen Aktualisierungsmechanismus habe ich bereits seit Jahren bei Kunden eingesetzt. Komisch, dass es solange dauert, bis sich best practices bei Microsoft wiederfinden.

Die beiden Referenten Jens Häupel und Daniel Melanchthon haben einen guten Job gemacht und einen tiefen Einblick in die ClickOnce Thematik gegeben. Neben dem einfachen Deployment wurde auch die Entwicklung von eigenen Updatestrategien, wie Nachladen von Assemblies bei Bedarf, mittels Verwendung des System.Deployment.Application Namespace erläutert.

Interessant war die Demo von ClickOnce (auch unter der sicheren Verteilung mittels Zertifikaten) anhand der Microsoft Musterfirma Contoso. Dies ist eine virtuelle Firma mit einer komplett aufgesetzten IT Struktur in Form von Servern und Clients (inkl Active Directory Konfiguration). Diese „Firma“ wird auf einer DVD ausgeliefert (allerdings nur an Microsoft Partner) und lässt sich mittels Virtual PC oder VM Ware betreiben. Ziel ist es, schnell und einfach produktive Szenarien nachzustellen, um evtl. eigene Software zu testen.

NUnitASP mit Windows Authentication

Bei der Verwendung von NUnitASP erscheint die folgende Fehlermeldung: 401 Access Denied error

Laut NUnitASP Doku sollte man folgenderweise vorgehen: If you receive a 401 Access Denied error, check your security settings. For example, try enabling anonymous access for the GuestBook virtual directory, and make sure the IUSR_machinename user has read access to the directory.

Was aber, wenn Windows Authentication verwendet wird? Die Lösung habe ich unter http://home.iprimus.com.au/lachlanb/nunitasp/nunit.html gefunden:

   Browser.Credentials = System.Net.CredentialCache.DefaultCredentials;
   Browser.GetPage(http://localhost/WebApp/Default.aspx);

Dies erlaubt den Zugriff auf die Webseite mit dem angemeldeten User.

 

NUnitASP mit .NET 2.0

Kleine Anleitung, wie NUnitASP Version 1.5.1 mit .NET 2.0 eingerichtet wird:

  1. Aktuelles NUnit 2.2.5 für .NET 2.0 http://www.nunit.org/ herunterladen und installieren
  2. NUnitASP http://nunitasp.sourceforge.net/ herunterladen und entpacken (am besten in C:\Inetpub\wwwroot\NUnitASP)
  3. Alle Dateien aus dem bin Verzeichnis von NUnit nach C:\Inetpub\wwwroot\NUnitASP\lib\NUnit kopieren
  4. Solution NUnitAsp.sln in Visual Studio 2005 öffnen und konvertieren
  5. Visual Studio Command Prompt öffnen und im Verzeichnis C:\Inetpub\wwwroot\NUnitASP nant.bat aufrufen. Dieser Aufruf schlägt zwar fehl, aber es wird ein Schlüsselpaar zum Signieren der Assembly erzeugt.
  6. Projekt in Visual Studio 2005 kompilieren.