Muss mal schnell was mitgeloggt werden, bietet sich z.B. der StreamWriter an. using System.IO; … string fileName = String.Format(„log-{0}.txt“, DateTime.Now.ToString(„yyyy-MM-dd“)); string dataRow = String.Format(„{0}; {1}; {2}“, DateTime.Now, var1, var2); StreamWriter myFile = new StreamWriter(Server.MapPath(„~/App_Data/“ + fileName), true); myFile.WriteLine(dataRow); myFile.Close();
WeiterlesenKategorie: Tipps, Tricks, Code-Schnipsel
ASP.NET: Canonical-Link-Tag dynamisch anpassen und einfügen
Doppelte Inhalte mögen Suchmaschinen bekanntermaßen nicht. Doch meistens können Webseiten über http://domain.de und http://www.domain.de erreicht werden. Für die Suchmaschine sind das zwei unterschiedliche Dinge. Ein recht einfacher Ansatz mit ASP.NET kann so aussehen: // using System.Web.UI.HtmlControls; HtmlLink canonicalLink = new HtmlLink(); canonicalLink.Attributes[„rel“] = „canonical“; canonicalLink.Href = Request.Url.AbsoluteUri.Replace(„www.“, „“); Page.Header.Controls.Add(canonicalLink); Das ganze kommt dann z.B. in den Event-Handler Page_Load (Master-Datei, […]
WeiterlesenASP.NET: Telefonliste mit Initiale per Repeater auflisten
Hier mal ein Quick ’n‘ Dirty-Ansatz einer Telefonliste mit Initialen. .aspx <asp:Repeater ID=“Repeater1″ runat=“server“> <HeaderTemplate> <table> </HeaderTemplate> <ItemTemplate> <%#SetInitial(Eval(„Nachname“).ToString())%> <tr> <td><a href=“profil.aspx?ID=<%#Eval(„ID“)%>“> <%#Eval(„Nachname“)%>, <%#Eval(„Vorname“)%></a></td> <td><%#Eval(„Telefon“)%></td> <td><%#Eval(„EMail“)%></td> </tr> </ItemTemplate> <FooterTemplate> </table> </FooterTemplate> </asp:Repeater> .aspx.cs // C# private char initialOld; public string SetInitial(string lastName) { char initial = Convert.ToChar(lastName.Substring(0, 1).ToUpper()); if (initial == ‚Ä‘) initial = ‚A‘; […]
WeiterlesenFundstelle eines Suchbegriffs markieren (C#)
Hebt den Suchbegriff an der Funstelle hervor, ähnlich den Suchmaschinen. Die Anzahl der Zeichen vor und nach der Fundstelle kann angegeben werden. Beispiel: Suche nach „nur“ im Text „Ich bin nur ein kleiner Text.“ Ergebnis (4 Zeichen vor und nach der Funsstelle): …bin nur ein… // C# public static string MarkReference(string text, string search, int num) { string referenceText […]
WeiterlesenASP.NET: TextBox JavaScript-OnClick-Ereignis hinzufügen (= Pseudo OnClientClick)
Leider gibt es bei TextBoxen kein OnClientClick-Ereignis, um z.B. bei Klick darauf den Inhalt zu entfernen. protected void Page_Load(object sender, EventArgs e) { TextBox1.Attributes.Add(„onclick“, „this.value=“;“); } Ein anderes Beispiel: Einen LinkButton „disablen“ bei OnClick. (Gesehen bei http://www.dotnetsnippets.com) protected void Page_Load(object sender, EventArgs e) { LinkButton1.Attributes.Add(„onclick“, „this.disabled=true; this.onclick=function() { return false; }“); }
WeiterlesenMS-DOS: Warten-Befehl
Da es unter MS DOS (Windows XP!) leider keinen Befehl wie wait oder sleep gibt und auch kein choice mehr in der Standard-Installation vorhanden ist, kann man sich aber mit ping behelfen! Nicht die feine englische Art aber es funktionert. Das X durch eine Zahl (= Sekunden) ersetzen: ping -n X 127.0.0.1>nul
WeiterlesenSQL: Zufalls-Datensatz bzw. -Sortierung in Access, SQL Server
Zufälligen Datensatz (Zeile) aus einer Tabelle abrufen: Access: SELECT TOP 1 * FROM Table ORDER BY Rnd(ID); — oder — SELECT TOP 1 * FROM Table ORDER BY Rnd(INT(NOW*ID)-NOW*ID); SQL Server: SELECT TOP (1) * FROM Table ORDER BY NEWID(); Gleiche Funktion mit andere Datenbanken: http://www.petefreitag.com/item/466.cfm Ohne die Einschränkung TOP im SELECT, lassen sich die Daten […]
WeiterlesenASP.NET: Daten (z.B. Datensatz-ID) einem Button per CommandArgument mitgeben
Hier im Beispiel: Übergabe der ID beim Klicken eines Buttons in einem Repeater: <asp:Repeater ID=“Repeater1″ runat=“server“> <ItemTemplate> <%# Eval(„Title“)%> <asp:Button ID=“Button1″ runat=“server“ Text=“löschen“ CommandArgument=′<%# Bind(„ID“)%>′ OnCommand=“Button1_Command“ /><br /> </ItemTemplate> </asp:Repeater> … protected void Button1_Command( object sender, CommandEventArgs e ) { int delId = Convert.ToInt32(e.CommandArgument); … }
WeiterlesenASP.NET: Mehrere Buttons / Formulare auf einer Seite
Hat man mehrere Buttons auf einer Seite, muss man explizit angeben, welcher Button beim bestätigen über die Tastatur (Enter), ausgelöst werden soll. Das liegt daran, daß nur ein form-Tag verwendet werden darf. Ein bestimmter Button kann z.B. im Form-Tag angegeben werden: <form id=“form1″ runat=“server“ defaultbutton=“Button2″> Bei mehreren Formularen dann einfach mit einem Panel umschließen: <asp:Panel […]
WeiterlesenFTP-Batch mit Auswahlmöglichkeit
Immer wieder die selben Daten per FTP auf den Server laden? Dann hilft vielleicht dieses kleine DOS-FTP-Batch weiter. Infos zum FTP-Upload gibt es hier. FTP-Uploader.bat echo off :start cls color 17 echo. echo FTP UPLOADER echo. echo ======================================= echo. echo [1] Upload (and overwrite) database echo [2] Upload (and overwrite) all pictures echo [c] Cancel echo. […]
Weiterlesen