Die meisten n├╝tzlichen .NET-Utility-Klassen-Entwickler neigen dazu, neu zu erfinden, anstatt sie wiederzuverwenden


Answers

String.IsNullOrEmpty()

Question

Ich habe vor kurzem diesen Beitrag von Phil Haack ( Die nützlichsten .NET-Dienstprogramm-Entwickler tendieren dazu, lieber als Wiederverwendung neu zu erfinden ) gelesen und dachte, ich würde sehen, ob irgendjemand irgendwelche Ergänzungen zu der Liste hat.




Viele der neuen Linq-Funktionen scheinen ziemlich unbekannt zu sein:

Any<T>() & All<T>()

if( myCollection.Any( x => x.IsSomething ) )
    //...

bool allValid = myCollection.All( 
    x => x.IsValid );

ToList<T>(), ToArray<T>(), ToDictionary<T>()

var newDict = myCollection.ToDictionary(
    x => x.Name,
    x => x.Value );

First<T>(), FirstOrDefault<T>()

return dbAccessor.GetFromTable( id ).
    FirstOrDefault();

Where<T>()

//instead of
foreach( Type item in myCollection )
    if( item.IsValid )
         //do stuff

//you can also do
foreach( var item in myCollection.Where( x => x.IsValid ) )
    //do stuff

//note only a simple sample - the logic could be a lot more complex

Alle wirklich nützlichen kleinen Funktionen, die Sie außerhalb der Linq-Syntax verwenden können.




Die System.Diagnostics.Stopwatch Klasse.




Environment.NewLine



Ich musste einige Dateien vor kurzem in einer Windows-Anwendung herunterladen. Ich habe die DownloadFile-Methode im WebClient-Objekt gefunden:

    WebClient wc = new WebClient();
    wc.DownloadFile(sourceURLAddress, destFileName);



System.Text.RegularExpressions.Regex




myString.Equals (andererString)

und Optionen, einschließlich kulturspezifischer Optionen.

Ich wette, dass mindestens 50% der Entwickler etwas schreiben wie: if (s == "id") {...}




Hartes Codieren von a / in eine Verzeichnismanipulationszeichenkette im Vergleich zur Verwendung von:

IO.Path.DirectorySeparatorChar



Enum.Parse ()




Viele Leute scheinen es am liebsten, eine XML-Datei manuell zu durchsuchen, um etwas zu finden, statt XPathNaviagator zu verwenden.




input.StartsWith("stuff") anstelle von Regex.IsMatch(input, @"^stuff")




Datei Zeug.

using System.IO;

File.Exists(FileNamePath)

Directory.Exists(strDirPath)

File.Move(currentLocation, newLocation);

File.Delete(fileToDelete);

Directory.CreateDirectory(directory)

System.IO.FileStream file = System.IO.File.Create(fullFilePath);






Tags