Wenn man ein UserControl als WebPart verwendet, kann man dies nicht wie sonst bei entsprechenden CustomControls möglich, von WebPart ableiten. Man kann allerdings die entsprechenden Interfaces IwebPart und IwebActionable aus dem Namespace System.Web.UI.WebControls.WebParts implementieren und erhält damit dann auch die gängigen Properties wie Title usw.
Nicht erhalten ist aber die entsprechende Möglichkeit das Control exportfähig zu machen, das erreicht man aber via:
GenericWebPart wp = ...
WebParts ist eine „neue“ Technologie, die mit ASP.NET 2.0 eingeführt wird. Dabei geht es im Grunde um ein Framework, dass es einem ermöglicht personalisierbare Websites, insbesondere Portale, zu erstellen.
Personalisierbar heißt aus Benutzersicht, dass man sich entsprechende Features einer Anwendung auswählen, gestalten und on thy fly auf der Seite positionieren kann. Ein sehr einfaches Beispiel hierfür ist zum Beispiel das Newsportal von Google (http://news.google.de). Das Prinzip ist ...
Die diversen RoleManagement-Featues von ASP.NET 2 erfordern natürlich irgendwo einen Ort, wo die verschiedenen Benutzerdaten, Rollen usw. gespeichert werden. Per default ist das momentan eine in der machine.config definierte SQL-Server-Express-Datenbank, die beim Anlegen von Benutzern usw. im „ASP.NET Web Application Administration“ Center automatisch in das App_Data-Verzeichnis der eigenen Applikation kopiert wird.
Möchte man nun eine neue oder bestehende Datenbank verwenden, und nicht ein ...
Praktisch: man kann direkt bei der Deklaration von Masterpages für ein Webform definieren, welche MasterPage für welchen Browser verwendet werden soll – damit spart man sich den programmatischen Weg, der zwar auch nur wenige Zeilen Code bedeuten würde, aber immerhin.
Beispiel:
"C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" ie:MasterPageFile="~/MasterPage_IE.master" mozilla:MasterPageFile="~/MasterPage_Firefox.master" %> ...
Gerade ein neues cooles Feature von ASP.NET 2.0 entdeckt: UrlMappings. Das heißt im Grunde, dass man in der web.config ohne zusätzliche Installation eines ISAPI-Filters oder http-Handlers fest definierte Weiterleitungen setzen kann.
Das kann zum Beispiel nützlich sein, wenn der Kunde schnell mal eine sprechende URL für eine Werbeaktion benötigt. Und da man neuerdings ja auch die web.config programmatisch manipulieren kann, könnte man ihn das sogar selbst ändern und pflegen lassen ...
Der Code ...
Für Suchmaschinen kann es sinnvoll sein, "nur eine Startseite" zu haben. Das bedeutet, dass für die Bots "http://www.domainname.de/" und "http://www.domainname.de/default.aspx" zwei unterschiedliche Websites darstellen, auf denen sich natürlich die gleichen Inhalte befinden - die Folge: es wird ein Duplikat erkannt.
Benutzt man das Sitemap-Control in ASP.NET 2.0, gibt es da aber ein Problem:
"1.0" encoding="utf-8" ?>
"http://schemas.microsoft.com/AspNet/SiteMap-File-1.0" ...
In einem Forum kam die Frage auf, wie man Eingabefelder mit Texten vorbelegen könne, die dann beim "Anklicken" verschwinden. Das kann zum Beispiel nützlich sein, um dem Benutzer zu demonstrieren, was in ein Feld eingetragen werden soll.
Und so geht's:
"text" value="dein@name.de" onfocus="if(this.value=='dein@name.de')this.value=''" onblur="if(this.value=='')this.value='dein@name.de'" />
Der Vorteil hierbei ist noch, dass durch die Verwendung der Events OnFocus() und OnBlur() auch reagiert ...
Frage:
Wozu die Google-Toolbar für Firefox, der hat doch die Suchabfrage eh schon drinnen!?
Antwort:
Rechtschreib-Korrektur für beliebige Formulare!
On-The-Fly-Übersetzung von Wörtern auf englischen Websites!
Wirklich sehr geil ... es reicht ein englisches Wort mit der Maus zu überfahren, und schon bekommt man die passende deutsche Übersetzung geliefert wenn man möchte.
Zudem bietet die Toolbar eine relativ intelligente Rechtschreibkorrektur für beliebige Formulare:
Für den ...
Da ich heute mal FxCop ausprobiert habe (unbedingt empfehlenswert für jeden Entwickler und Programmierer!), bin ich beim anschließenden Fixen der vielen Fehler auch auf die coolen Refactoring-Features in Visual Studio 2005 gestoßen.
Was man sich mit ReSharper für Visual Studio 2003 noch relativ teuer einkaufen muss, ist nun alles gleich mit dabei, und das ist sehr erfreulich für den Entwickler :-)
Zuerst ganz allgemein, was beudetet "Refactoring"?
Zitat aus der Wikipedia:
"Beim Refactoring ...
Für mein Problem mit den WebControls bin ich nun auf ein paar Lösungen gestoßen.
Möglichkeit 1:
Man behält die Basisklasse bei und holt sich via LoadControl das entsprechende WebControl aus dem Parent-Objekt, also dem Template. Nicht sehr schön.
Möglichkeit 2:
Man behält die Vorgehensweise wie in ASP.NET 1.1 bei, d.h. man bindet das CodeBehind-File weiterhin via src- anstatt über CodeFile-Attirbut an das WebForm und übernimmt die Deklaration selbst. Wohl die einfachste Lösung, aber eben ...