Ich arbeite mit dem Visual Studio 2008 liebe es, wenn der Code automatisch eingerückt wird, wenn man beispielsweise eine geschweifte Klammer schließt.
Allerdings ist für standardmäßig so eingestellt, das für Javascript der Indent style "K&R style" verwendet wird (http://en.wikipedia.org/wiki/Indent_style). Ich würde aber gerne den "Allman style" verwenden.
Lange Rede kurzer Sinn, man gehe im VS2008 auf "Extras" --> "Optionen" und wählt dann die Option "Text-Editor" --> "Jscript" --> "Formatierung" aus. Dort werden 2 Haken gesetzt für:
- Öffnende geschweifte Klammer für Funktionen in neuer Zeile platzieren
- Öffnende geschweifte Klammer für Kontrollblöcke in neuer Zeile platzieren
Tada - schon wird der Code im für mich perfekten Style eingerückt :-)
20. Mai 2010
5. Mai 2010
Javascript - parseInt - Problem
Durch Zufall habe ich festgestellt, das die Javascript-Methode parsteInt(string, radix) eine Zahl als Octal ansieht, wenn der String z.B: "012" lautet, liefert ein parseInt("012") eine 10.
Wenn man ein decimal parsen möchte, sollte man also parseInt("012", 10) aufrufen.
Siehe dazu auch hier http://www.w3schools.com/jsref/jsref_parseInt.asp
JavaScript parseInt() Function
--------------------------------------------------------------------------------
JavaScript Global Functions
--------------------------------------------------------------------------------
Definition and Usage
The parseInt() function parses a string and returns an integer.
The radix parameter is used to specify which numeral system to be used, for example, a radix of 16 (hexadecimal) indicates that the number in the string should be parsed from a hexadecimal number to a decimal number.
If the radix parameter is omitted, JavaScript assumes the following:
•If the string begins with "0x", the radix is 16 (hexadecimal)
•If the string begins with "0", the radix is 8 (octal). This feature is deprecated
•If the string begins with any other value, the radix is 10 (decimal)
Syntax
parseInt(string, radix)
Wenn man ein decimal parsen möchte, sollte man also parseInt("012", 10) aufrufen.
Siehe dazu auch hier http://www.w3schools.com/jsref/jsref_parseInt.asp
JavaScript parseInt() Function
--------------------------------------------------------------------------------
JavaScript Global Functions
--------------------------------------------------------------------------------
Definition and Usage
The parseInt() function parses a string and returns an integer.
The radix parameter is used to specify which numeral system to be used, for example, a radix of 16 (hexadecimal) indicates that the number in the string should be parsed from a hexadecimal number to a decimal number.
If the radix parameter is omitted, JavaScript assumes the following:
•If the string begins with "0x", the radix is 16 (hexadecimal)
•If the string begins with "0", the radix is 8 (octal). This feature is deprecated
•If the string begins with any other value, the radix is 10 (decimal)
Syntax
parseInt(string, radix)
Parameter | Description |
string | Required. The string to be parsed |
radix | Optional. A number (from 2 to 36) that represents the numeral system to be used |
11. März 2009
IETester - simuliert IE 5.5, 6, 7, 8 RC1
Beim entwickeln von Webseiten ist es immer wichtig die Seite unter verschiedenen Browsern zu testen. Leider kann man nicht mehrere Versionen eines Browsers auf einem System installieren. Es gibt aber ein nettes kleines Tool, welches den Internetexplorer in den Versionen 5.5, 6, 7 und 8 RC1 simuliert. In meinen bisherigen Tests war das Tool sehr erfolgreich.
Download: http://www.my-debugbar.com/wiki/IETester/HomePage
Download: http://www.my-debugbar.com/wiki/IETester/HomePage
6. Juni 2008
Kleine Exception Übersicht
Hier findet man eine Übersicht über Standard-Exceptions, wie die ArgumentNullException oder die ArgumentOutOfRangeException:
http://msdn.microsoft.com/de-de/library/z4c5tckx(VS.80).aspx
http://msdn.microsoft.com/de-de/library/z4c5tckx(VS.80).aspx
28. Mai 2008
Symbolleiste im VS2005 zurücksetzen
Heute habe ich auf meinem PC SQL Server 2005 Standard installiert. Nach der Installation habe ich ganz normal mein Visual Studio 2005 gestartet, aber siehe da, die Symbolleiste "Standard" war nicht mehr so wie zuvor. Es fehlten einige Einträge wie die "Schnellsuche", "Rückwärts navigieren" etc. Das hat mir überhaupt gar nicht gefallen, da ich diese Schaltflächen häufig nutze.
Ich habe dann die "Standard"-Leiste angepasst, konnte so auf die Rasche aber nicht alle betreffenden Schaltflächen finden. Irgendwann habe ich mich dann auf die Suche begeben und fand folgende Lösung:
Extras --> "Einstellungen Importieren und Exportieren..." --> "Alle Einstellungen zurücksetzen"
Je nach dem was man hier möchte, kann man die alten Einstellungen noch speichern, oder eben nicht...
Im nächsten Schritt habe ich:
"Visual C#-Entwicklungseinstellungen" ausgewählt - und siehe da - meine Symbolleiste "Standard" war wieder die alte *GottSeiDank*.
Ich habe dann die "Standard"-Leiste angepasst, konnte so auf die Rasche aber nicht alle betreffenden Schaltflächen finden. Irgendwann habe ich mich dann auf die Suche begeben und fand folgende Lösung:
Extras --> "Einstellungen Importieren und Exportieren..." --> "Alle Einstellungen zurücksetzen"
Je nach dem was man hier möchte, kann man die alten Einstellungen noch speichern, oder eben nicht...
Im nächsten Schritt habe ich:
"Visual C#-Entwicklungseinstellungen" ausgewählt - und siehe da - meine Symbolleiste "Standard" war wieder die alte *GottSeiDank*.
25. April 2008
Intellisense für SKIN-Dateien
Wie hofft habe ich mich schon gefragt, warum es kein Intellisense für Skin-Dateien im Visual Studio gibt. Nach dem ich mich heute mal wieder darüber geärgert habe, suchte ich nach einer Lösung. Die Lösung war natürlich ganz simpel und man sindet auch einig Einträge im Netz dazu. Da dieser aber meistens für ein englisches Visual Studio sind, wollte ich das ganze mal in deutsch suchen, um die Chance zu erhöhen, das man auf Anhieb die richtig Auswahl trifft ;)
- Extras -> Optionen
- Text-Editor -> Dateierweiterung
- Oben links "skin" eintragen und "Editor für benutzerdefinierte Steuerelemente" auswählen
- Auf "Hinzufügen" klicken
- Skin-Datei beenden und neu öffnen
- fertig :)
16. April 2008
Warum heißt der RadioButton RadioButton?
Heute kam im Büro die Frage auf, wie der RadioButton eigentlich zu seinem Namen kam. Mein Kollege Peter hatte natürlich sofort eine Antwort parat. Und zwar:
An den alten Radios konnte immer genau ein Knopf ausgewählt werden. Wenn man einen anderen Sender einschaltet, springt der zuvor ausgewählte Knopf raus und der neue wird "reingedrückt". Das gleiche Prinzip findet sich bei einem Walkman wieder. Man kann entweder Spulen oder Abspielen, aber es sind nie 2 Knöpfe gleichzeitig heruntergedrückt ;)
P.S.: Das war wieder mal ein Posting das die Welt nicht braucht :D
An den alten Radios konnte immer genau ein Knopf ausgewählt werden. Wenn man einen anderen Sender einschaltet, springt der zuvor ausgewählte Knopf raus und der neue wird "reingedrückt". Das gleiche Prinzip findet sich bei einem Walkman wieder. Man kann entweder Spulen oder Abspielen, aber es sind nie 2 Knöpfe gleichzeitig heruntergedrückt ;)
P.S.: Das war wieder mal ein Posting das die Welt nicht braucht :D
6. März 2008
Die Zustandsinformationen sind für diese Seite ungültig. Möglicherweise sind sie fehlerhaft.
Ich habe eine Webanwendung entwickelt die Asp.Net AJAX verwendet. Unter anderem wird auch das AjaxControlToolkit genutzt.
Nun habe ich in einen ModalPopupExtender in dem mehrere RadioButtons liegen. Wenn die Auwahl geändert wird, reagiere ich im CodeBehind darauf. Dies hat auch bis dato immer super geklappt. Auf einmal bekam ich jedoch nach dem Ändern der Auswahl dieser RadioButtons eine ViewStateException - "Die Zustandsinformationen sind für diese Seite ungültig. Möglicherweise sind sie fehlerhaft.".
Der StackTrace der Fehlermeldung lautet:
[HttpException (0x80004005): Die Zustandsinformationen sind für diese Seite ungültig. Möglicherweise sind sie fehlerhaft.]
System.Web.UI.ViewStateException.ThrowError(Exception inner, String persistedState, String errorPageMessage, Boolean macValidationError) +267
System.Web.UI.ClientScriptManager.EnsureEventValidationFieldLoaded() +2133067
System.Web.UI.ClientScriptManager.ValidateEvent(String uniqueId, String argument) +66
System.Web.UI.Control.ValidateEvent(String uniqueID, String eventArgument) +108
System.Web.UI.WebControls.TextBox.LoadPostData(String postDataKey, NameValueCollection postCollection) +36
System.Web.UI.WebControls.TextBox.System.Web.UI.IPostBackDataHandler.LoadPostData(String postDataKey, NameValueCollection postCollection) +12
System.Web.UI.Page.ProcessPostData(NameValueCollection postData, Boolean fBeforeLoad) +353
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +7350
System.Web.UI.Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +213
System.Web.UI.Page.ProcessRequest() +86
System.Web.UI.Page.ProcessRequestWithNoAssert(HttpContext context) +18
System.Web.UI.Page.ProcessRequest(HttpContext context) +49
ASP.default_aspx.ProcessRequest(HttpContext context) in d:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\mn4\84e8c227\648fae87\App_Web_6i13s-qv.4.cs:0
System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +358
System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +64
Ich habe keine Ahnung wo dieser Fehler auf einmal herkommt. Vor allem scheint er von einer TextBox auszugehen (siehe StrackTrace), ich ändere aber lediglich den Wert eines RadioButtons! Ich validiere nichts und mache sonst auch nichts weiter, als mir in einer Session zu merken, welchen RadioButton ich gerade ausgewählt habe. Ich kann mir diesen Fehler also absolut nicht erklären :(
Ich habe längere Zeit gesucht, habe aber nicht herausgefunden wie der Fehler zu Stande kam. Letztendlich habe ich in der Page-Direktive "EnableEventValidation" auf "false" gesetzt. Danach ist das Problem nicht mehr aufgetreten.
Wenn einer eine besser Idee hat, dann bitte immer her mit Vorschlägen ;) Ich bin für alles offen :)
ciao Anke
Nun habe ich in einen ModalPopupExtender in dem mehrere RadioButtons liegen. Wenn die Auwahl geändert wird, reagiere ich im CodeBehind darauf. Dies hat auch bis dato immer super geklappt. Auf einmal bekam ich jedoch nach dem Ändern der Auswahl dieser RadioButtons eine ViewStateException - "Die Zustandsinformationen sind für diese Seite ungültig. Möglicherweise sind sie fehlerhaft.".
Der StackTrace der Fehlermeldung lautet:
[HttpException (0x80004005): Die Zustandsinformationen sind für diese Seite ungültig. Möglicherweise sind sie fehlerhaft.]
System.Web.UI.ViewStateException.ThrowError(Exception inner, String persistedState, String errorPageMessage, Boolean macValidationError) +267
System.Web.UI.ClientScriptManager.EnsureEventValidationFieldLoaded() +2133067
System.Web.UI.ClientScriptManager.ValidateEvent(String uniqueId, String argument) +66
System.Web.UI.Control.ValidateEvent(String uniqueID, String eventArgument) +108
System.Web.UI.WebControls.TextBox.LoadPostData(String postDataKey, NameValueCollection postCollection) +36
System.Web.UI.WebControls.TextBox.System.Web.UI.IPostBackDataHandler.LoadPostData(String postDataKey, NameValueCollection postCollection) +12
System.Web.UI.Page.ProcessPostData(NameValueCollection postData, Boolean fBeforeLoad) +353
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +7350
System.Web.UI.Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +213
System.Web.UI.Page.ProcessRequest() +86
System.Web.UI.Page.ProcessRequestWithNoAssert(HttpContext context) +18
System.Web.UI.Page.ProcessRequest(HttpContext context) +49
ASP.default_aspx.ProcessRequest(HttpContext context) in d:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\mn4\84e8c227\648fae87\App_Web_6i13s-qv.4.cs:0
System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +358
System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +64
Ich habe keine Ahnung wo dieser Fehler auf einmal herkommt. Vor allem scheint er von einer TextBox auszugehen (siehe StrackTrace), ich ändere aber lediglich den Wert eines RadioButtons! Ich validiere nichts und mache sonst auch nichts weiter, als mir in einer Session zu merken, welchen RadioButton ich gerade ausgewählt habe. Ich kann mir diesen Fehler also absolut nicht erklären :(
Ich habe längere Zeit gesucht, habe aber nicht herausgefunden wie der Fehler zu Stande kam. Letztendlich habe ich in der Page-Direktive "EnableEventValidation" auf "false" gesetzt. Danach ist das Problem nicht mehr aufgetreten.
Wenn einer eine besser Idee hat, dann bitte immer her mit Vorschlägen ;) Ich bin für alles offen :)
ciao Anke
4. März 2008
IHttpHandler und Sessions...
Ich verwende einen HttpHandler, der auf eine Session des Benutzers zugreifen soll!
Auf diese möchte ich in einer Klasse mittels "HttpContext.Current.Session["sessionName"]" zugreifen. Leider ist HttpContext.Current.Session jeweils null!
Das Problem ist jedoch ganz simpel zu lösen, man lässt den HttpHandler einfach noch von System.Web.SessionState.IRequiresSessionState erben und schon unterstützt der HttpHandler auch Sessions ;)
Auf diese möchte ich in einer Klasse mittels "HttpContext.Current.Session["sessionName"]" zugreifen. Leider ist HttpContext.Current.Session jeweils null!
Das Problem ist jedoch ganz simpel zu lösen, man lässt den HttpHandler einfach noch von System.Web.SessionState.IRequiresSessionState erben und schon unterstützt der HttpHandler auch Sessions ;)
29. Februar 2008
"AcceptButton" bei Asp.Net setzen
Heute wollte ich einen Asp.Net-Button als "AcceptButton" setzen, d.h. als Standardbutton, der reagiert, wenn man ENTER betätigt.
Man muss dazu sagen, dass ich MasterPages verwende. Bei "normalen" Seiten, kann man in der Form-Deklaration defaultbutton="button1" setzen. Bei MasterPages geht dies jedoch nicht so simpel.
Ich habe nun herausgefunden, dass man in Asp.Net mittels "Page.Form.DefaultButton" einen DefaultButton setzen kann.
Leider schlug sowohl
Page.Form.DefaultButton = this.button1.ID;
noch
Page.Form.DefaultButton = this.button1.ClientID;
fehl, es muss
Page.Form.DefaultButton = this.button1.UniqueID;
heißen ;)
Man muss dazu sagen, dass ich MasterPages verwende. Bei "normalen" Seiten, kann man in der Form-Deklaration defaultbutton="button1" setzen. Bei MasterPages geht dies jedoch nicht so simpel.
Ich habe nun herausgefunden, dass man in Asp.Net mittels "Page.Form.DefaultButton" einen DefaultButton setzen kann.
Leider schlug sowohl
Page.Form.DefaultButton = this.button1.ID;
noch
Page.Form.DefaultButton = this.button1.ClientID;
fehl, es muss
Page.Form.DefaultButton = this.button1.UniqueID;
heißen ;)
17. Januar 2008
Shortcuts in Visual Studio
Wer hat sich nicht schon immer mal gefragt was für ShortCuts es in Visual Studio alles gibt.
Wie kann man z.B. alle Regionen (regions) in einer Datei auf- bzw. zuklappen.
Dies geht ganz einfach mit der Tastenkombination
Strg+M Strg+M
Weitere Shortcut gibt es unter:
Visual C# 2005 Keyboard Shortcut Reference Poster
http://www.microsoft.com/downloads/details.aspx?FamilyID=c15d210d-a926-46a8-a586-31f8a2e576fe&DisplayLang=en
Visual C# 2008 Keybinding Reference Poster
http://www.microsoft.com/downloads/details.aspx?familyid=E5F902A8-5BB5-4CC6-907E-472809749973&displaylang=en
Wie kann man z.B. alle Regionen (regions) in einer Datei auf- bzw. zuklappen.
Dies geht ganz einfach mit der Tastenkombination
Strg+M Strg+M
Weitere Shortcut gibt es unter:
Visual C# 2005 Keyboard Shortcut Reference Poster
http://www.microsoft.com/downloads/details.aspx?FamilyID=c15d210d-a926-46a8-a586-31f8a2e576fe&DisplayLang=en
Visual C# 2008 Keybinding Reference Poster
http://www.microsoft.com/downloads/details.aspx?familyid=E5F902A8-5BB5-4CC6-907E-472809749973&displaylang=en
23. November 2007
Der Resharper und Intellisense...
Ich verwende seit einer Weile den Resharper 3.0 und bin eigentlich sehr zufrieden damit. Eigentlich! Die Intellisense mag ich nicht sonderlich, die hat mir im Original vom Visual Studio teilweise besser gefallen. Dabei meine ich zum Beispiel das verwenden von Enumeratoren, welches im Visual Studio 2004 einfach besser umgesetzt wurde, aber auch das anzeigen von Kommentaren zu einer Methode, die einfach im VS übersichtlicher dargestellt werden.
Nun wollte ich das Intellisense auf das vom VS umstellen. Dazu gibt es unter "Resharper" --> "Options" einen Eintrag "Intellisense". Dort kann man auch direkt "Visual Studio" einstellen. Prima dachte ich, das geht ja einfach... Aber nein so einfach war es dann doch nicht. Es funktionierte nun nämlich gar kein Intellisense mehr :(
Nun habe ich herausgefunden, das man das Intellisense im VS wieder aktivieren muss. Dazu geht man einfach unter "Extras" --> "Optionen" auf "Text-Editor" --> "C#". Dort setzt man dann die entsprechenden Haken bei der Anweisungsvervollständigung und schon hat man das Intellisense des Visual Studio 2005 zurück :)
Nun wollte ich das Intellisense auf das vom VS umstellen. Dazu gibt es unter "Resharper" --> "Options" einen Eintrag "Intellisense". Dort kann man auch direkt "Visual Studio" einstellen. Prima dachte ich, das geht ja einfach... Aber nein so einfach war es dann doch nicht. Es funktionierte nun nämlich gar kein Intellisense mehr :(
Nun habe ich herausgefunden, das man das Intellisense im VS wieder aktivieren muss. Dazu geht man einfach unter "Extras" --> "Optionen" auf "Text-Editor" --> "C#". Dort setzt man dann die entsprechenden Haken bei der Anweisungsvervollständigung und schon hat man das Intellisense des Visual Studio 2005 zurück :)
13. November 2007
LineCount in Visual Studio
Wollten Sie schon immer mal wissen, wieviel Zeilen Code Sie in einem Projekt generiert haben. Mit dem Line Counter können die Zeilen ganz einfach gezählt werden.
Das kleine Tool wird installiert und schon kann es los gehen. Man kann die Zeilen einer ganzen Projektmappe zählen lassen, oder eine einzelne Projektmappe auswählen.
Dabei werden die Zeilen gezählt in denen Code steht, die in denen Kommentare stehen, leere Zeilen usw. Es wird jeweils angegeben wieviel des Codes zum Beispiel aus Kommentaren bestehen.
Ein Tool was man nicht wirklich braucht, was aber einfach witzig ist :)
Download: http://www.wndtabs.com/index.html
Das kleine Tool wird installiert und schon kann es los gehen. Man kann die Zeilen einer ganzen Projektmappe zählen lassen, oder eine einzelne Projektmappe auswählen.
Dabei werden die Zeilen gezählt in denen Code steht, die in denen Kommentare stehen, leere Zeilen usw. Es wird jeweils angegeben wieviel des Codes zum Beispiel aus Kommentaren bestehen.
Ein Tool was man nicht wirklich braucht, was aber einfach witzig ist :)
Download: http://www.wndtabs.com/index.html
24. Oktober 2007
Wie lautet denn nun der passende Connectionstring?
Suchen Sie auch ab und an nach dem passenden ConnectionString, dann finden Sie hier die Lösung:
http://connectionstrings.com/
http://connectionstrings.com/
12. September 2007
Zeilenhöhe bei einem TreeView
Heute habe ich eine Asp.Net 2.0 TreeView angelegt und dort ShowLines aktiviert. Dabei entstand der Effekt, das die einfachen Linien gestückelt wurden.
Nach einer kurzen Suche im WWW fand ich diesen netten Blog-Eintrag der eine Lösung zu diesem Problem bietet:
http://blogs.msdn.com/carloc/archive/2007/05/23/broken-line-in-asp-net-2-0-treeview-in-ie-7.aspx
Nach einer kurzen Suche im WWW fand ich diesen netten Blog-Eintrag der eine Lösung zu diesem Problem bietet:
http://blogs.msdn.com/carloc/archive/2007/05/23/broken-line-in-asp-net-2-0-treeview-in-ie-7.aspx
7. September 2007
Quellcode im Visual Studio automatisch einrücken
Wer kennt das Problem nicht, man erstellt eine Website unter Asp.Net und fügt ein Tag (z.B: ein div) hinzu und möchte nun die untergliederten Tags neu Strukturieren (einrücken).
Dies geht mit den Tastenkombinationen:
"Ctrl" + K"
und danach
"Ctrl" + "D"
Mit besten Dank an Peter B. für den Tipp ;)
P.S.: Das funktioniert natürlich auch Im CodeBehind...
Dies geht mit den Tastenkombinationen:
"Ctrl" + K"
und danach
"Ctrl" + "D"
Mit besten Dank an Peter B. für den Tipp ;)
P.S.: Das funktioniert natürlich auch Im CodeBehind...
16. August 2007
Die Standarddatenbank des Benutzers kann nicht geöffnet werden.
Heute habe ich in der SQL Managementkonsole eine DB umbenannt, da ich von einem Kollegen eine neue Version der Datenbank bekommen habe und die alte eben mal sichern wollte.
Nach der Umbenennung bekam ich dann folgende Meldung:
Die Standarddatenbank des Benutzers kann nicht geöffnet werden. Fehler bei der Anmeldung.
Fehler bei der Anmeldung für den Benutzer 'Benutzername'. (Microsoft SQL Server, Fehler: 4064)
Darauf hin habe ich ein wenig (viel) gegoogelt und bin dann auf diesen Beitrag gestossen:
http://support.microsoft.com/kb/307864/en-us
Achtung: Unbedingt auf die englische Version schalten!
Mit folgenden Befehlen habe ich die MASTER-DB geändert und konnte mich so zum Glück wieder an der Managementkonsole einloggen:
1. sqlcmd -E -S Instanzname -d master
2. alter login [Benutzername] with DEFAULT_DATABASE = DBName
3. GO
Nach der Umbenennung bekam ich dann folgende Meldung:
Die Standarddatenbank des Benutzers kann nicht geöffnet werden. Fehler bei der Anmeldung.
Fehler bei der Anmeldung für den Benutzer 'Benutzername'. (Microsoft SQL Server, Fehler: 4064)
Darauf hin habe ich ein wenig (viel) gegoogelt und bin dann auf diesen Beitrag gestossen:
http://support.microsoft.com/kb/307864/en-us
Achtung: Unbedingt auf die englische Version schalten!
Mit folgenden Befehlen habe ich die MASTER-DB geändert und konnte mich so zum Glück wieder an der Managementkonsole einloggen:
1. sqlcmd -E -S Instanzname -d master
2. alter login [Benutzername] with DEFAULT_DATABASE = DBName
3. GO
23. Mai 2007
Asp.Net-Konfiguration lässt sich nicht öffnen
Heute habe ich einen netten Effekt kennengelernt. Nach dem Erstellen einer neuen Webseite und öffnen des Websiteverwaltungs-Tools, erschein lediglich eine nichtssagende Fehlermeldung und man konnte keine Einstellungen vornehmen.
Nach einigem Hin und Her und etlichen Tests wurde auf einem 2. PC das selbe Prozedere durchgeführt und es wurde erfolgreich eine User-DB angelegt und auch das Anlegen von Nutzern klappte problemlos.
Das Projekt wurde dann wiederum auf den 1. Rechner kopiert und auf dem Desktop abgelegt. Und siehe da, das Websiteverwaltungs-Tools ließ sich öffnen und man konnte auch Nutzer erstellen und bearbeiten.
Es stellte sich heraus, das der 1. Versuch auf einer anderen Partition durchgeführt wurde (D: statt C:) und das Verwaltungstool scheinbar keinen Zugriff auf die Projektdaten bekommen hat. Portierte man das Projekt auf die Partition C: klappte der Zugriff wiederum problemlos.
Das ganze trat unter Windows Vista auf. Eine direkt Lösung, ausser direkt unter C: zu arbeiten habe ich momentan nicht parat - da das Problem bei einem Kollegen auftrat und dieser aus Zeitgründen erstmal diese "spontane" Lösung angewendet hat - aber ich hoffe trotzdem jemandem mit diesen Hinweisen bei der Problembehebung helfen zu können ;-)
Nach einigem Hin und Her und etlichen Tests wurde auf einem 2. PC das selbe Prozedere durchgeführt und es wurde erfolgreich eine User-DB angelegt und auch das Anlegen von Nutzern klappte problemlos.
Das Projekt wurde dann wiederum auf den 1. Rechner kopiert und auf dem Desktop abgelegt. Und siehe da, das Websiteverwaltungs-Tools ließ sich öffnen und man konnte auch Nutzer erstellen und bearbeiten.
Es stellte sich heraus, das der 1. Versuch auf einer anderen Partition durchgeführt wurde (D: statt C:) und das Verwaltungstool scheinbar keinen Zugriff auf die Projektdaten bekommen hat. Portierte man das Projekt auf die Partition C: klappte der Zugriff wiederum problemlos.
Das ganze trat unter Windows Vista auf. Eine direkt Lösung, ausser direkt unter C: zu arbeiten habe ich momentan nicht parat - da das Problem bei einem Kollegen auftrat und dieser aus Zeitgründen erstmal diese "spontane" Lösung angewendet hat - aber ich hoffe trotzdem jemandem mit diesen Hinweisen bei der Problembehebung helfen zu können ;-)
30. März 2007
Codekommentare lesen
Wer bereits das Problem hatte, dass erstellte Kommentare von eingebundenen Bilbiotheken nicht mittels IntelliSense angezeigt wurden, der findet hier Abhilfe:
Um die generierte XML-Datei mit dem IntelliSense-Feature zu verwenden, benennen Sie die XML-Datei nach der Assembly, die unterstützt werden soll, und stellen anschließend sicher, dass sich XML-Datei und Assembly im selben Verzeichnis befinden. Wenn dann im Visual Studio-Projekt auf die Assembly verwiesen wird, wird die XML-Datei auch gefunden. Weitere Informationen finden Sie unter Anzeigen von Codekommentaren.
Quelle: http://msdn2.microsoft.com/de-de/library/3260k4x7(VS.80).aspx
Um die generierte XML-Datei mit dem IntelliSense-Feature zu verwenden, benennen Sie die XML-Datei nach der Assembly, die unterstützt werden soll, und stellen anschließend sicher, dass sich XML-Datei und Assembly im selben Verzeichnis befinden. Wenn dann im Visual Studio-Projekt auf die Assembly verwiesen wird, wird die XML-Datei auch gefunden. Weitere Informationen finden Sie unter Anzeigen von Codekommentaren.
Quelle: http://msdn2.microsoft.com/de-de/library/3260k4x7(VS.80).aspx
22. Februar 2007
ConnectionString - Was bedeutet |DataDirectory|
Die Angabe von DataDirectory in einem ConnectionString steht in einer Webanwendung für den App_Data Ordner, in einer Windowsanwendung für das Verzeichnis in dem sich de *.exe befindet.
// Bei Bedarf kann der Pfad mittels folgendem Befehl angepasst werden
AppDomain.CurrentDomain.SetData("DataDirectory", newpath)
Diese Syntax kann für den SqlClient und für OleDb angewendet werden.
Quelle: http://blogs.msdn.com/smartclientdata/archive/2005/08/26/456886.aspx
// Bei Bedarf kann der Pfad mittels folgendem Befehl angepasst werden
AppDomain.CurrentDomain.SetData("DataDirectory", newpath)
Diese Syntax kann für den SqlClient und für OleDb angewendet werden.
Quelle: http://blogs.msdn.com/smartclientdata/archive/2005/08/26/456886.aspx
13. Februar 2007
String in XmlNode umwandeln
Ich stand vor dem Problem einen XmlNode als Text zu speichern und später wieder in einen XmlNode umzuwandeln. Das Speichern als Text war kein Problem, das zurückwandeln stellt sich jedoch als kleines Problem dar.
XmlTextReader xmlReader = new XmlTextReader(new StringReader(stringVariable));
// if you already have an XmlDocument then use that, otherwise
// create one
XmlDocument xmlDocument = new XmlDocument();
XmlNode node = xmlDocument.ReadNode(xmlReader);
Quelle: http://www.thescripts.com/forum/thread535362.html
XmlTextReader xmlReader = new XmlTextReader(new StringReader(stringVariable));
// if you already have an XmlDocument then use that, otherwise
// create one
XmlDocument xmlDocument = new XmlDocument();
XmlNode node = xmlDocument.ReadNode(xmlReader);
Quelle: http://www.thescripts.com/forum/thread535362.html
9. Januar 2007
Leeres Zeichen in einem Char
Wenn man einem Char ein leeres Zeichen zuweisen möchte, kann man dies folgendermaßen tun:
char c = '\0';
http://cyrilgupta.com/blog/?p=63
char c = '\0';
http://cyrilgupta.com/blog/?p=63
17. Oktober 2006
Farbige und/oder animierte Cursor verwenden
Möchte man einen eigenen farbigen oder animierten Cursor verwenden, ist dies nicht über
this.Cursor = new Cursor("Dateiname.cur");
möglich. Es werden lediglich starre schwarz-weiße Cursor angezeigt. EIne Lösung für dieses Problem findet man hier: Using Colored and Animated Cursors
this.Cursor = new Cursor("Dateiname.cur");
möglich. Es werden lediglich starre schwarz-weiße Cursor angezeigt. EIne Lösung für dieses Problem findet man hier: Using Colored and Animated Cursors
29. September 2006
Blendeffekt für Webseiten
Hier ein netter Tipp aus dem Eisbären Blog:
Ein Blendeffekt für Webseiten ;-)
<meta http-equiv="Page-Enter" content="blendTrans(Duration=0.2)" />
<meta http-equiv="Page-Exit" content="blendTrans(Duration=0.2)" />
Quelle: Smooth page transitions - part II
http://www.des-eisbaeren-blog.de/Default.aspx?SearchKey=blend
Ein Blendeffekt für Webseiten ;-)
<meta http-equiv="Page-Enter" content="blendTrans(Duration=0.2)" />
<meta http-equiv="Page-Exit" content="blendTrans(Duration=0.2)" />
Quelle: Smooth page transitions - part II
http://www.des-eisbaeren-blog.de/Default.aspx?SearchKey=blend
Problem mit dem Decimal-Datentyp und OleDbParametern
Mir ist neulich ein Problem mit OleDbParametern aufgefallen. Ich weise einem Parameter einen Decimal hinzu, sagen wir einmal "1,23", in der Datenbank wird jedoch "123" gespeichert, das Komma wird also einfach herausgeschnitten!
Ein double-Wert der dem Parameter übergeben wird, wird inklusive Kommas korrekt gespeichert. Also entweder sollte man generell doubles verwenden, oder den decimal-Wert vor dem zuweisen in den OleDbParameter in einen String konvertieren, wobei man natürlich die Kultur (CultureInfo) beachten muss. Alternativ kann man auch den Decimal vor dem zuweisen zu dem Parameter in einen double konvertieren, hier wird auch der korrekte Wert "1,23" abgespeichert.
Wenn jemand hier was genaueres weiß, oder einen anderen Tipp hat, dann immer her damit ;-)
http://www.mycsharp.de/wbb2/thread.php?threadid=25406&hilightuser=294
Ein double-Wert der dem Parameter übergeben wird, wird inklusive Kommas korrekt gespeichert. Also entweder sollte man generell doubles verwenden, oder den decimal-Wert vor dem zuweisen in den OleDbParameter in einen String konvertieren, wobei man natürlich die Kultur (CultureInfo) beachten muss. Alternativ kann man auch den Decimal vor dem zuweisen zu dem Parameter in einen double konvertieren, hier wird auch der korrekte Wert "1,23" abgespeichert.
Wenn jemand hier was genaueres weiß, oder einen anderen Tipp hat, dann immer her damit ;-)
http://www.mycsharp.de/wbb2/thread.php?threadid=25406&hilightuser=294
21. September 2006
VS.NET 2005 - ToolBox verliert Icons
Ab und an passiert es, das die ToolBox im Visual Studio.NET 2005 Icons verliert.
Um den Fehler zu beheben kann man einfach mit der rechten Maustaste in die ToolBox klicken und auf "Toolbox zurücksetzen" ("reset toolbox") gehen.
http://www.mycsharp.de/wbb2/thread.php?threadid=21102
Um den Fehler zu beheben kann man einfach mit der rechten Maustaste in die ToolBox klicken und auf "Toolbox zurücksetzen" ("reset toolbox") gehen.
http://www.mycsharp.de/wbb2/thread.php?threadid=21102
15. September 2006
Reservierte Worte in Jet 4.0
Bei der Arbeit mit Jet 4.0 passiert es häufig, das man Fehlermeldungen erhält obwohl der SQL-Befehl korrekt aussieht und dieser auch zum Beispiel in Access ausgeführt werden kann. Das kan darin liegen, das reservierte Wörter wie DATE, IMAGE, KEY oder auch PASSWORD verwendet werden.
Beispiel:
select username, password from user;
Da sowohl "username" als auch "password" reservierte Wörter sind, würde eine Exception erscheinen. Folgende Abfrage jedoch würde keine Exception auslösen, da eckige Klammern verwendet werden:
select [username], [password] from user;
Im Folgenden finden Sie eine Übersicht der reservierten Wörter:
BallonToolTips können durch einen Popup-Blocker unterbunden werden
Achtung, bei der Verwendung von Ballon-ToolTips sollten Sie acht geben, denn diese können durch XP-Tools wie zum Beispiel XP-AntiSpy ausgestellt werden.
http://www.mycsharp.de/wbb2/thread.php?threadid=24359&hilight=tooltip
http://www.mycsharp.de/wbb2/thread.php?threadid=24359&hilight=tooltip
Abonnieren
Posts (Atom)