Oliver Scheer informiert über das Silverlight 2 Toolkit, welches auf Codeplex zu finden ist.
Da scheint es echt spannende Controls und Charts zu geben...
Sogar noch etwas ausführlichere Infos mit Demos und Code findet man bei Tim Heuer.
Oliver Scheer informiert über das Silverlight 2 Toolkit, welches auf Codeplex zu finden ist.
Da scheint es echt spannende Controls und Charts zu geben...
Sogar noch etwas ausführlichere Infos mit Demos und Code findet man bei Tim Heuer.
Ich war ja am Montag und Dienstag beim Silverlight Liftoff und dort haben wir viele Beispiele von Silverlight zu sehen bekommen. Ein Projekt stach besonders hervor - der Car-Shop.
Leider war dieser noch nicht auf Silverlight 2 optimiert was er nun aber zu sein scheint. Ich finde diese Anwendung ziemlich gelungen und es zeigt so einige Stärken von Silverlight.
Zu finden ist die Anwendung unter http://cs.w3a.de
Es ist auf jeden Fall einen Blick wert!
Ich komme gerade aus Frankfurt zurück, wo mein zweites Training zu Silverlight in den letzten beiden Tagen stattgefunden hat. Ein neugieriger Blick auf die Seite des Evangelisten Oliver Scheer brachte mir diese brandneue News (17:45 Uhr) "da war der Herr gerade mal 45 Minuten mit dem Training fertig und eventuell auf dem Weg zum Flughafen"
Ich hatte gestern und heute ein KickOff zu Silverlight, wo wir viele schöne Dinge über die Möglichkeiten von Silverlight vermittelt bekommen haben. Der Kurs war für den Einstieg in die Silverlightwelt super und man hat einen ersten Eindruck bekommen, was eigentlich für einen Designer(in) und dem Entwickler(in) alles dahintersteckt.
Passend dazu kam heute Vormittag das offizielle Release2Web von Microsoft heraus, welches unter http://silverlight.net/GetStarted herunter geladen werden kann. Bereits im Vorfeld wurde angekündigt, das alle Entwicklungen noch einmal überarbeitet werden müssen die mit der Beta erstellt wurden.
Unter http://silverlight.net/GetStarted/overview.aspx findet sich eine Tabelle mit den Unterschieden zwischen der Version 1 und 2 von Silverlight.
Am Donnerstag und Freitag werde ich in Bad Homburg an einem weiteren Kurs speziell für Entwickler teilnehmen und bin gespannt ob es weiter in diese Richtung geht und soviel neues bringt und vor allem ob meine Vorfreude anhält und nicht in Frust übergeht
Im Anschluss daran werde ich wohl wieder in das gewohnte Sharepointleben übergehen und bis zur XTopia warten.
Ich habe beim regelmäßigen durchforsten der für mich interessantesten/wichtigsten Seiten einen Beitrag auf www.home-server-blog.de entdeckt, welcher auf die Seite mce-community verweist, wo Kay Diefenthal einen Weg zur Anpassung der Intranetseite aufzeigt um eigene Software dort zentral bereit zustellen.
Da ich aus dem Sharepointumfeld komme und eine Anpassung von Originaldateien immer sehr kritisch gegenüberstehe, jedoch gerne von dieser Idee animiert war, habe ich mir eine Alternative ausgedacht. Diesen Weg möchte ich auch gerne anderen vorstellen.
Im Grunde ist es fast dieselbe Vorgehensweise, jedoch mit dem Unterschied, das eine eigene WebApplication erstellt wird und die Dateien dynamisch ausgelesen werden. (es kann natürlich auch dieselbe WebApplication sein, aber wer weiß schon was mir demnächst damit noch so einfällt)
- verbinde dich per RDP mit deinem Server
- navigiere zu C:\Inetpub und erstelle eine Kopie des Ordners "Intranet" - den Namen kannst du dir selbst aussuchen (ich verwende customsoftware)
- tippe nun bei Start-Ausführen "inetmgr" ein und drücke Enter
Über Rechtsklick auf "Web Sites" kannst du eine neue "Web Site" hinzufügen
Ein Wizard führt dich hier durch alle notwendigen Einstellungen:
Im vorletzten Schritt wählst du den kopierten Ordner aus
![]()
Im letzten nennst du noch die Zugriffsmethoden (Read und Run Scripts)
Das war es dann auch schon. Über den kleinen Pfeil oben oder das Kontextmenü kann die WebApplication nun gestartet werden. Ein lokaler Aufruf sollte bereits funktionieren und die gewohnte Intranetseite darstellen.
Wir wollen ja aber die Seite nicht nur auf dem Server direkt aufrufen, sondern von den Clients! Dazu muss der Port in der Firewall freigegeben werden, damit diese Seite erreichbar ist. Klicke auf "Start - Control Panel - Windows Firewall" öffnen.
Im 2 Register befinden sich alle Ausnahmen, die die Firewall passieren dürfen. Hier einfach über "Add Port" den zuvor gewählten Port angeben und mit OK bestätigen.
Ab sofort kann die Seite auch über einen Client erreicht werden.
Nun erstellen wir uns ein Verzeichnis, indem die zukünftige Software abgelegt werden soll. Ich bevorzuge das bereits bestehende Software Verzeichnis "D:\shares\Software" und lege hier einen Ordner mit dem Namen "customsoftware" an. Diesen machen wir nun als virtuelles Verzeichnis in unserer WebApplication bekannt. (falls nicht mehr offen - Start - Ausführen - inetmgr)
Hier wählen wir die WebApplication aus und machen einen Rechtsklick. Über "New" - "Virtual Directory" können wir nun einen Assistenten öffnen, der uns die Angabe des Verzeichnisses erlaubt.
Zuerst wählen wir einen Alias, der im späteren Verlauf noch Bedeutung findet. Über diesen Namen lässt sich bequem von jeder Position im Web auf das Verzeichnis zugreifen.
Im nächsten Abschnitt wählen wir nun den Ordner aus
Nun ist auch das virtuelle Verzeichnis fertig. Bleibt noch die Anpassung für das dynamische auslesen des Verzeichnisses. Dazu erstellen wir im Verzeichnis C:\Inetpub\[DeinName] eine leere Textdatei und benennen diese um zu default.aspx (die Datei default.htm umbenennen, löschen - wird nicht mehr gebraucht oder im inetmgr die Reihenfolge ändern, sie wird sonst vorrangig interpretiert)
folgenden Code in die default.aspx einfügen:
<%@ Page Language="C#" %>
<%@ Import Namespace="System.IO" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Dynamic aspx page</title>
<link rel="stylesheet" type="text/css" href="css.css" />
</head>
<body>
<div id="hdr"> <img src="i/hdr_logo.jpg" />
<h1 id="DfpSetup">Custom Software Install</h1>
</div>
<%
StringBuilder sb = new StringBuilder();
DirectoryInfo dirinfo = new DirectoryInfo(Server.MapPath("SetupProgs"));
foreach (FileInfo fileinfo in dirinfo.GetFiles())
{
sb.Append("<div id=\"info\"><img src=\"i/icon_hs.gif\" /><p class=\"itemhdr1\" id=\"DfpSetup1\">" + fileinfo.Name + "</p><p id=\"DfpSetupInstructions\"></p><div id=\"issuelink\"><a href=\"SetupProgs/" + fileinfo.Name + "\" target=\"_blank\" title=\"Download Now\"><img src=\"i/icon_arrow.gif\" /> Download Now</a></div></div>");
}
Response.Write(sb.ToString());
%>
</body>
</html>
Achte im Code auf die beiden Stellen "Server.MapPath("SetupProgs")" und "<a href=\"SetupProgs/". Wenn du beim Virtuellen Verzeichnis einen anderen Namen gewählt hast dann ersetze ihn durch deinen.
Bei einem Aufruf der Seite sollte nun eine leere Seite erscheinen. Dies kann man unterbinden, indem man nun einfach Dateien in dem Verzeichnis hinterlegt
Dies sieht noch sehr spartanisch aus, sollte ja aber auch nur den machbaren Weg aufzeigen, ohne die originalen Dateien anzufassen. Denkbar wäre hier noch eine Schachtelung der Dateien in verschiedene Unterordner (Gruppierungen/Sortierung), Anzeige je nach Userberechtigungen oder das auslesen der Beschreibung der einzelnen Dateien aus einem XML File u.v.m.
Ich hoffe es kann noch jemand gebrauchen...
Letzte Kommentare