.NET-Software-Entwicklung - DotNetNuke - Business-Develoment
# Monday, December 03, 2007

Subversion fuer Linux-Dummies

Jeder der Subversion scheut, weil man sich ja meist doch nicht in der Linux(änlichen)-Welt bewegt, wird sich jetzt freuen:

Es gibt eine Verwaltungsoberfläche womit auch wir Microsofties zurecht kommen :) Unter http://www.visualsvn.com/server/ gibt es nun eine SnapIn für die MMC. Noch erfreulicher finde ich aber, dass diese Lösung nichts kostet und jedem frei zur Verfügung steht!

 


Monday, December 03, 2007 3:07:49 PM (W. Europe Standard Time, UTC+01:00)  #    - Trackback
Allgemein | Software

Der kostenlose eBook Adventskalender

Auf der Website http://entwickler-press.de/ gibt es in der Zeit von 1. - 24. Dezember einen ganz besonderen Adventskalender. Jeden Tag (und nur an dem entsprechenden Tag) gibt es ein kostenlose eBook zum Download. Dabei handelt es sich nicht um irgendwelche alten Hündchen sondern laut Angabe sollten sogar aktuelle Bücher aus dem Jahr 2007 angeboten werden.

Folgende Themen werden dabei behandelt: Java, Apache und XML über Software-Architektur sowie Web- und Skriptsprachen bis hin zu .NET- und Windows-Technologien.

Bin gespannt was morgen hinter meinem Türchen ist :)


Monday, December 03, 2007 2:28:56 PM (W. Europe Standard Time, UTC+01:00)  #    - Trackback
Allgemein
# Wednesday, November 07, 2007

DotNetNuke 4.7.0 steht als Download bereit

Also zunächst mal: Ich lebe noch ;-) Auch wenn mein Blog in den letzten Wochen eigentlich etwas anderes vermuten läßt. In den letzten Woche stecke ich in einem größeren Projekt wo ich DotNetNuke und die WCF (Windows Communication Foundation) mit einander kombiniert habe, um ein Videoportal (so in Richtung youtube, myvideo, etc.) zu entwicken. Doch dazu später hoffentlich mehr....

Seit heut steht DotNetNuke 4.7.0 zur Verfügung und wurde für die Öffentlichkeit als Download bereit gestellt. Dieses wurde pünktlich zur US-Konferenz OpenForce'07 bekannt gegeben. Dabei finde die neuen benutzerfreundlichen URLs sehr spannend. Leider komme ich im Augenblick noch nicht dazu, diese zu testen. :(

 


Wednesday, November 07, 2007 8:16:40 PM (W. Europe Standard Time, UTC+01:00)  #    - Trackback
.NET 2.0 | DotNetNuke | WCF
# Tuesday, September 18, 2007

Das mächtige Fragezeichen oder der ?? Opterator in C#

Immer wieder kommt die Situation das man im Laufe eines .NET Programmes überprüfen muss ob eine Objekt wirklich existiert oder aber ob in der Variablen der Wert NULL enthalten ist. Vielfach möchte man auch einfach für den NULL Fall einen Defaultwert setzen. Mit dem ?? Operator ist das in .NET C# sehr elegant und einfach zu realisieren.

Hier ein ganz einfaches Beispiel:

string resultmessage = param ?? "Keine Nachricht da ;-)";

In der MSDN findet man dazu auch nähere Informationen (hier )

 

 


Tuesday, September 18, 2007 8:43:40 PM (W. Europe Daylight Time, UTC+02:00)  #    - Trackback
.NET | .NET 2.0
# Thursday, September 13, 2007

Escape Sequence Description

Hier eine Liste der wichtigsten (zumindest für mich) Escape-Sequencen:

  • \t Tab (Unicode 0x0009).
  • \r Carriage return (0x000d).
  • \n Newline (line feed) (0x000a).
  • \v Vertical tab (0x000b).
  • \a Alert (0x0007).
  • \b Backspace (0x0008).
  • \0 Null (0x0000).
  • \\ Backslash (0x005c).
  • \' Single quote (0x0027).
  • \" Double quote (0x0022).

 


Thursday, September 13, 2007 2:09:03 AM (W. Europe Daylight Time, UTC+02:00)  #    - Trackback
.NET | .NET 2.0 | Allgemein
# Wednesday, September 12, 2007

eBook OpenXML explained zum Nulltarif

Hier mal wieder ein Hinweis auf ein kostenloses eBook.

Wouter Van Vugt hat auf 129 Seiten das Thema Grundlagen rund um „OpenXML“ behandelt.  Dieses eBook steht auf der Website von “OpenXMLDeveloper.org” kostenlos zum herunterladen bereit (PDF, 3,2 MB). In einem gesonderten Download sind darüber hinaus die im Buch behandelten Samples verfügbar.

 


Wednesday, September 12, 2007 1:51:41 AM (W. Europe Daylight Time, UTC+02:00)  #    - Trackback
Allgemein | XML

V-Server: Wie erstelle ich eine Sicherung mit dem NTBackup?

Heute Abend habe ich mich mal wieder mit einem V-Server (Virtueller Server) bei 1und1 rumgeschlagen. Mein Ziel war ein automatisches Update jede Nacht durchzuführen. Dabei bekam ich allerdings ständig den Fehler:

Beim Erstellen der Volumeschattenkopie wurde ein Fehler ermittelt:0x8004230f

Das virtualisierte Dateisystem basiert auf der Virtualisierungstechnik Virtuozzo von SWSoft und dadurch steht die Volumenschattenkopie in Windows nicht zur Verfügung.

Durch den Befehl ntbackup mit verschiedenen Befehlszeilenparametern
kann man den Sicherungsvorgang über die Eingabeaufforderung oder Batchdatei ausführen.

C:\>ntbackup backup C:\Daten /J "Backup" /F "C:\Backup\Daten.bkf" /SNAP:off

Dieser Befehl führt eine Sicherung des Ordner C:\Backup und deren Unterordner in die Datei
C:\Daten.bkf durch.

Die Volumenschattenkopie wird über den Befehlszeilenparameter /SNAP:off
deaktiviert.


Wednesday, September 12, 2007 1:34:02 AM (W. Europe Daylight Time, UTC+02:00)  #    - Trackback
Allgemein | Software
# Monday, September 10, 2007

Neues Authentifizierungssystemen bei DotNetNuke (LiveId, OpenId, CardSpace)

In der kommenden Version von DotNetNuke (DNN 4.6.0) ist ein sehr interessantes Feature die Möglichkeit der Implementierung von neuen Authentifizierungssystemen jenseits von DNN. Nun ist es nicht nur mehr möglich sich gegen DotNetNuke oder einer ADS (Active Directory Service) zu authentifizieren, sondern eine Anmeldung kann nun durch:

  • Cardspace
  • LiveID
  • OpenID

Dafür wurde ein "neues" Providermodell für die Authentifizierung implementiert. In den letzten Tagen habe ich für einen Kunden bereits einen eigenen Provider für eine Anmeldung bei der zentralen Golf-Online-Seite erstellt und erste positive Erfahrungen damit gesammelt. Dafür muss man lediglich drei UI-Komponenten entwickeln: Login, Settings and LogOff – jeweils von Basisklassen abgeleitet (AuthenticationLoginBase, AuthenticationSettingsBase and AuthenticationLogOffBase). Die Konfiguration der einzelnen verfügbaren Provider wird über die Tabelle Authentication vorgenommen. Dort wird ganz einfach ein Prefix und die drei UI-Komponenten angegeben.

Es ist auch möglich dem Benutzer die Auswahl selber zu überlassen, mit welchem Dienst er sich Authentifizieren möchte – das find ich insgesamt schon ziemlich sexy.

Wenn sich der Benutzer über z.B. LiveID angemeldet hat, dann wird nach erfolgreicher Authentifizierung ein Benutzerkonto angelegt oder aber man kann diesen Login mit einem existierenden DNN-Benutzerkonto verknüpfen. In der Datenbank gibt es dafür die Tabelle: UserAuthentication


Monday, September 10, 2007 3:48:52 PM (W. Europe Daylight Time, UTC+02:00)  #    - Trackback
.NET | .NET 2.0 | ASP.NET | DNN - Module | DotNetNuke
# Tuesday, September 04, 2007

Open Source .NET code performance and memory profiling software

Bei der Suche nach Performancemessungen für ein .NET Projekt, habe ich ich folgende interessante(s) Seite / Projekt gefunden:

ProfileSharp

Bis jetzt nur kurz getestet, scheint es aber ein gute Lösung zu sein um:

  • Eine Speicheranalyse durchzuführen (z.B. Memoryleaks)
  • Wo welche Rechenleistung benötigt wird

Besonders interessant ist, dass der Profiler keinerlei Veränderungen am SourceCode benötigt - Bestandteile des Profilers müssen also nicht in das Projekt / Assembly k(c)ompiliert werden. Er läßt sich einfach von außen anfügen

Das Produkt ist OpenSource und steht damit jedem zur Verfügung. Ob bei dem Funktionsumfang / Leistung mit kommerzielle Produkten aufnehmen kann werd ich sehen.

 


Tuesday, September 04, 2007 6:01:36 PM (W. Europe Daylight Time, UTC+02:00)  #    - Trackback
.NET | .NET 2.0 | Allgemein | Opensource | Software
# Wednesday, August 29, 2007

Eine .NET WinForms Anwendung nur einmal starten / arbeiten mit einem mutex

Wenn man eine Anwendung nur einmal durch den Anwender starten lassen möchte, dann ist das mit der Hilfe von einem erzeugten Mutex sehr einfach zu realisieren.

Nur ein paar Zeilen Quellcode sind dafür in der Main() Methode notwendig. Wie immer ist der Beispiel-Code in .NET C#.

bool createdNew;
///Einen neuen Mutex erzeugen, damit die Anwendung nur einmal gestartet werden kann.
System.Threading.Mutex appMutex = new System.Threading.Mutex(true, Application.ProductName, out createdNew);
///Wenn die Erzeugung erfolgreich war
if (createdNew)
{
///... dann kann die Anwendung ausgeführt werden
LogIn frmLogIn = new LogIn();
Application.Run(frmLogIn);

if (frmLogIn.DialogResult == DialogResult.OK)
Application.Run(new MainForm());

// den Mutex wieder frei geben
appMutex.ReleaseMutex();
}
else
{
///Wenn die Anwendung schon ausgeführt wird -> Hinweis-Dialog
string msg = String.Format("Das Programm \"{0}\" wurde bereits gestartet!", Application.ProductName);
MessageBox.Show(msg, Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Information);
}


Wednesday, August 29, 2007 8:36:23 PM (W. Europe Daylight Time, UTC+02:00)  #    - Trackback
.NET | .NET 2.0 | .NET 3.0 | Allgemein | Winform
# Tuesday, August 28, 2007

Alternatives ControlPanel / DotNetNuke Adminpanel

Das Core-Team von DotNetNuke hat in den letzten Versionen schon einiges an der Usability verbessert. Darunter gehört z.B. die Vererbung von Seiten-Rechten innerhalb der Seitenstruktur.

In vielen Projekten höre ich aber immer wieder, dass das ControlPanel (dort wo z.B. die Module ausgewählt werden) nicht flexibel genug ist und es Vorteilhaft wäre, wenn man anhand der DotNetNuke spez. Rollen die Funktionen ganz gezielt freischalten kann. Somit könnte man bestimmten Rollen ganz gezielt lediglich ein paar Module zur Verfügung stellen, die diese für ihre tägliche Arbeit benötigen. Der Vorteil liegt ganz klar auf der Hand: Die Komplexität für die Redaktuere wird reduziert. In vielen Fällen werden ja wirklich nur ganz wenige Module für die normale Arbeite benötigt (z.B.Text/HTML, Links, Images).

Seit ein paar Monaten verfolge ich eine Projekt, dass das DotNetNuke ControlPanel ersetzt (oder viel mehr eine Alternative bereit stellt). Mit diesem ControlPanel ist es nun endlich möglich die Berechtigungen innerhalb des Controlpanels sehr gezielt zu vergeben.

Hier kann man das Modul downloaden

Leider gibt es keine SourceCode Version von diesem Modul.


Tuesday, August 28, 2007 4:29:07 PM (W. Europe Daylight Time, UTC+02:00)  #    - Trackback
.NET | .NET 2.0 | ASP.NET | DNN - Module | DotNetNuke
# Friday, July 27, 2007

Edles XP-Desktop Design in schwarz-grauen

Gerade hab ich durch Zufall ein Cooles Theme für Windows XP gefunden. Es ist sogar ein offizielle Desktop-Theme von Mircosoft, das es allerdings nicht auf der Seite von Micrsoft direkt gibt.

Diese beiden Links geben sowohl eine Anleitung als auch einen Link zum entsprechenden Skin.
http://dlc.softwareload.de/Zune-Desktop-Theme-fuer-Windows-XP/48024
http://dlc.softwareload.de/Royale-Noir-Theme-fuer-Windows-XP/48019


Ich find es cool und habe es direkt mal installiert ...

Friday, July 27, 2007 2:46:54 PM (W. Europe Daylight Time, UTC+02:00)  #    - Trackback
Allgemein

Ein Web 2.0 Pop Up Fenster

In der letzten Zeit findet man im Web immer wieder Popup-Fenster die wie folgt aussehen:

web20popup.jpg

Die Umsetzung erfolgt via JavaScript und CSS und stellt kein großes Geheimnis dar. Wer sich allerdings trotzdem nicht die Mühe machen möchte (und niemand möchte wirklich etwas erarbeiten, was es schon gibt), für den habe ich hier einen tollen Link: http://orangoo.com/labs/GreyBox/. Auf dieser Seite gibt es eine Komponente (JavaScript) die einem bei der Umsetzung unterstützt.

Die Vorteile:

  • Es wird nicht durch die PopUp-Blocker verhindet, da es ja kein neues Fenster ist
  • Mit nur 22kb ist das Script recht klein
  • Wird schon auf viele Websites eingesetzt und kann als stabil betrachtet werden

Friday, July 27, 2007 10:21:33 AM (W. Europe Daylight Time, UTC+02:00)  #    - Trackback
.NET | Allgemein | ASP.NET | Controls | Opensource
# Wednesday, July 25, 2007

C#/VB .NET Coding Guidelines

Gerade habe ich ein kostenloses eBook zum Thema Coding Guidlines für C# und VB.NET gefunden und möchte darauf aufmerksam machen.

Den Download gibt es direkt unter submain.com

Das eBook hat folgende Themen:

  • Naming Guidelines
  • Class Member Usage Guidelines
  • Guidelines for Exposing Functionality to COM
  • Error Raising & Handling Guidelines
  • Array Usage Guidelines
  • Operator Overloading Usage Guidelines
  • Guidelines for Casting Types
  • Common Design Patterns
  • Callback Function Usage
  • Time-Out Usage
  • Security in Class Libraries
  • Threading Design Guidelines
  • Formatting Standards
  • Commenting Code
  • Code Reviews
  • Additional Notes for VB .NET Developers

Ebenso recht nützlich ist das Tool SmartOutline for VS2005, welches als kostenlose Version auf der Seite zur Verfügung gestellt wird. Damit wird das Handling von #region's - welche ich sehr gerne benutze - noch etwas verbessert.


Wednesday, July 25, 2007 5:00:41 PM (W. Europe Daylight Time, UTC+02:00)  #    - Trackback
.NET | .NET 2.0 | .NET 3.0 | Allgemein | Software
# Thursday, July 19, 2007

Die DotNetNuke WebControls / DNN NavigationProvider

Im Augenblick beschäftige ich mich mit dem DNN NavigationProvider. um für einen Kunden ein CSS basiertes Menu zur Verfügung zu stellen. Ursprünglich dachte ich eigentlich, dass man auf das Rendern des Menüs Einfluß hat und bestimmen kann, wie das Menu auszusehen hat.

Nachdem ich den Sourcecode der mitgelieferten Provider analysiert habe .. kam zunächst recht schnell die Ernüchterung. Da wird in der class DNNMenuNavigationProvider auf eine Objekt vom Typ DNNMenu zugegriffen. Doch der Sourcecode scheint davon nicht mit im Standarddownload enthalten zu sein.

Mein erster Schreck - das ich das Rendern gar nicht beeinflussen kann - ging schnell vorbei. Zum einem ist natürlich die Klasse DNNMenu in dem Downloadpaket DotNetNuke WebControls enthalten und zum anderen ist die Nutzung dieses Objektes ja gar nicht notwendig.

Jetzt werde ich mal versuchen meinen eigenen Menuprovider zu entwicklen und bin gespannt wie das klappt!


Thursday, July 19, 2007 11:34:23 AM (W. Europe Daylight Time, UTC+02:00)  #    - Trackback
.NET | .NET 2.0 | ASP.NET | Controls | DotNetNuke | Opensource
# Saturday, July 07, 2007

Screenshot von langen Websites

Immer wieder hat man das Problem einen Screenshot von einer Website zu erstellen, die viel zu lang ist und einfach nicht auf einen Bildschirm passt.
Gerade habe ich ein Add-ons - Screengrab - für den Firefox gefunden, dass einen Screenshot der gesamten Website erstellt auch wenn diese nicht wirklich komplett auf dem Bildschirm zu sehen ist.

Hier ist der direkte Downloadlink Firefox Add-ons Screengrab


Saturday, July 07, 2007 12:50:34 AM (W. Europe Daylight Time, UTC+02:00)  #    - Trackback
Allgemein | Software
# Wednesday, May 30, 2007

DotNetNuke 4.5.2 Released

Nachdem ich eigentlich schon wieder viel zu lange nichts mehr über DNN veröffentlicht hab, möchte ich damit nun endlich wieder beginnen.

Am 29.05 (also gestern) wurde die Version 4.5.2 veröffentlicht und steht wie gewohnt unter www.dotnetnuke.com zum Download bereit.

Mittlerweile ist eine ganze Menge an neuen Features implementiert wurden und eine einzelne Aufzählung wäre mit Sicherheit zu lang(weilig). Einen sehr genauen Einblick über die Veränderungen innerhalb von DotNetNuke bekommt man wie immer in der Bug Tracker.

 


Wednesday, May 30, 2007 6:17:58 PM (W. Europe Daylight Time, UTC+02:00)  #    - Trackback
.NET | .NET 2.0 | DotNetNuke | Opensource
# Thursday, May 24, 2007

Ich habe nichts am System modifiziert .. aha .. Systeminformationen hilft

Wer kennt das nicht: ein Kunde, ein Bekannter oder die Freundin sagt ganz unschuldig: Ich habe nichts gemacht .. der PC läuft einfach nur so nicht mehr. In solchen Momenten ist es doch immer schön, wenn man sich zumindest auf Windows verlassen kann. Das sagt einem nämlich welche Veränderungen an einem System stattgefunden haben, bevor ein Problem am System aufgetreten ist.

Einen Hinweis hierzu ist der "Systemverlauf" den Windows XP bieten. Er ist ein Teil des Programms "Systeminformationen" ("Start/Programme/Zubehör/Systemprogramme/Systeminformationen" oder mit "msinfo32" starten). Dort gibt es unter "Ansicht" den Eintrag "Systemverlauf". Dieser ist unterteil in drei Berichte: Hardwareressourcen, Komponenten und Softwareumgebung.

Die dargestellten Daten sind in Form von XML-Dateien im folgenden Pfad abgelegt:
%SystemRoot%\PCHEALTH\HELPCTR\DataColl


Weitere Informationen findet man direkt bei Microsoft.


Thursday, May 24, 2007 10:26:33 PM (W. Europe Daylight Time, UTC+02:00)  #    - Trackback
Allgemein | Software

Status List im Vista Style

Soeben habe ich ein sehr interessante Projekte oder viel mehr Komponente auf codeproject gesehen und möchte meiner Umwelt diese nicht vorenthalten.

Dabei handelt es sich jeweils um sehr schön gemachte Status List entwickelt in C#. Hier ist der direkte Link zu dieser .NET Komponente .... klick :)

Dazu passend gibt es auch noch ein Status Label (wohl in VB.NET) ... klick


Thursday, May 24, 2007 12:31:25 PM (W. Europe Daylight Time, UTC+02:00)  #    - Trackback
.NET | .NET 2.0 | Controls | Opensource
# Friday, May 04, 2007

Eine DotNet Technologie Suchmaschine

Suchmaschinen wie www.google.de oder www.live.de sind für alle Entwickler - ob .NET, PHP, Delphi, etc. - ein wertvolles Werkzeug um schnell Antworten und Lösungen bei Problemem zu finden.

Das größte Problem dabei ist aber meist, dass man nicht nur Suchergebnisse bekommt dich sich auch wirklich mit .NET befassen und somit wird die Recherche unnötig erschwert. Dieses gehört aber der Vergangenheit an, denn Dan Appleman hat folgende Website erstellt:

http://www.searchdotnet.com/

Diese Suchmaschine basiert auf Google, allerdings werden wirklich nur .NET relevante Ergebnisse angezeigt.

Die ersten Erfahrungen mit dieer Suchmaschine waren sehr positiv!


Friday, May 04, 2007 3:15:04 PM (W. Europe Daylight Time, UTC+02:00)  #    - Trackback
.NET | .NET 2.0 | .NET 3.0 | Allgemein