Snippets
There are 5 entries for the tag
Snippets
Eine doch lästige und unschöne Einschränkung bei der DropDownList ist doch, dass man nur ein Feld der DataSource an das Control binden kann. Oft will man halt aber mehr als nur ein Feld darstellen: Kategorie A: 3 Fahrzeuge Kategorie B: 11 Fahrzeuge Kategorie C: 1 Fahrzeug Natürlich geht das relativ problemlos, z.B. mittels String-Concatenation, ist aber doch lästig, wenn man sonst alles schön über direktes DataBinding lösen könnte – zumal das Control ja auch einen FormatString zur Steuerung der Ausgabe entgegennimmt. Eine Ableitung der DropDownList zu bauen, die das kann, ist zum Glück...
Das Testen von privaten Methoden wirft immer wieder Fragen auf. Natürlich gibt es hierfür auch diverse Lösungen: Visual Studio erstellt einen sogenannten Private Accessor, was schlussendlich nichts anderes als ein Wrapper ist, der mittels Reflection auf die privaten Members zugreift. Das ganze ist mir eher unsympathisch und verkompliziert das ganze nur. Ausserdem entstehen Schwierigkeiten beim Mocking. Trotzdem war dies bis jetzt die Lösung meiner Wahl. Private Members gar nicht testen. Da private Methoden in der Regel irgendwo mal aufgerufen werden, kann...
Mit iTextSharp lassen sich einigermassen komfortabel mehrere PDF-Dateien in eine einzige mergen. Folgendes Skript zeigt wies geht: using System;
using System.IO;
using iTextSharp.text;
using iTextSharp.text.pdf;
public class PdfMerge
{
public static void MergeFiles(string destinationFile, string[] sourceFiles)
{
try
{
int f = 0;
PdfReader reader = new PdfReader(sourceFiles[f]);
...
Das Atlas (oder besser ASP.NET Ajax) UpdatePanel bietet die Möglichkeit, auf getriggerte Control-Events zu reagieren und sich entsprechend upzudaten. 1: <asp:Button ID="MyButton" runat="server" Text="Submit" /> 2: <atlas:UpdatePanel ID="MyUpdatePanel" runat="server" Mode="Conditional"> 3: <ContentTemplate> 4: <asp:Label ID="Message" runat="server"></asp:Label> 5: </ContentTemplate> 6: <Triggers> 7: <atlas:ControlEventTrigger ControlID="MyUsc" EventName="Click" /> 8: </Triggers> 9: </atlas:UpdatePanel>
Was aber wenn der...
weil es sich so kompliziert anhört, aber so einfach ist:public void Start(){ WebRequest req = HttpWebRequest.Create("http://blogs.dotnetgerman.com/dani.net"); req.BeginGetResponse(new AsyncCallback(ResponseCallback), req);}void ResponseCallback(IAsyncResult ar){ HttpWebRequest req = (HttpWebRequest)ar.AsyncState; WebResponse resp = req.EndGetResponse(ar); // ab hier gehts normal weiter...
}Das ganze funktioniert mit asynchronen delegate-calls ("Begin...") - d.h. natürlich,dass sich dieses Prinzip nicht nur auf WebRequests beschränkt, sondern generellbei Delegaten angewendet werden kann.