I Allzweck Log-Methode haben, die Einträge im Log-Datei, Ereignisprotokoll usw.Logging-Methode mit String.Format Capability
public static void Log(string logEntry)
{
// Write DateTime and logEntry to Log File, Event Log, etc.
}
ich Überlastung geschaffen bieten String.Format() Funktionalität mit dem folgenden schreibt:
public static void Log(params object[] logEntry)
{
// Purpose: Overload Log method to provide String.Format() functionality
// with first parameter being Format string.
// Example: Log("[{0:yyyy-MM-dd}] Name: {1}, Value: {2:#,##0.00}", DateTime.Now, "Blah, Blah, Blah", 12345.67890)
string formatString = logEntry[0].ToString();
object[] values = new object[logEntry.Length - 1];
for (int i = 1; i < logEntry.Length; i++)
{
values[i - 1] = logEntry[i];
}
Log(String.Format(formatString, values));
}
das funktioniert gut, aber gibt es eine bessere Möglichkeit, verbleibende Array-Elemente verweisen auf die String.Format() Funktion zu übergeben? Oder besser, um Element 0 aus dem Array zu entfernen?
Ich weiß, ich könnte auch verwenden Log nur (String.Format (..., aber für mehr formale Zwecke bin bereitstellt.
Danke, manchmal wird die einfachste Lösung übersehen! –