
Holger Schwichtenberg, 53 ünlü uzmanla tavsiye ve eğitim yoluyla ve yazılımın geliştirilmesinde çok sayıda orta ve büyük şirketi destekleyen uzmanlar ağının teknik direktörüdür. Çok sayıda ulusal ve uluslararası uzman konferansındaki görünümleri, 90'dan fazla uzman kitabı ve 1.500'den fazla uzman makalesi sayesinde Holger Schwichtenberg, Almanya'daki .NET ve Web teknikleri için en iyi uzmanlardan biridir.
.NET 6.0'da Microsoft'un Guardian Metodu vardı ArgumentNullException.ThrowIfNull(Wert) Bir yöntem parametresinin sıfır değer olarak verilip verilmediğini kontrol etmek için tanıtıldı. .NET 7.0'da takip edildi ArgumentException.ThrowIfNullOrEmpty(Wert) Halatlar için.
.NET 8.0'da, yöntemin parametreleri için sayıların değer alanlarını da kontrol eden başka muhafızlar var:
- ArgumentOutOfRangeException.ThrowIfZero()
- ArgumentOutOfRangeException.ThrowIfNegative()
- ArgumentOutOfRangeException.ThrowIfNegativeOrZero()
- ArgumentOutOfRangeException.ThrowIfGreaterThan()
namespace NET8_Console;
public class FCL_Exceptions
{
public string Calc(decimal? betrag, decimal prozent, string einheit)
{
#region neue Wächtermethoden vor .NET 8.0
// seit .NET 6.0:
ArgumentNullException.ThrowIfNull(betrag);
// seit .NET 7.0:
ArgumentException.ThrowIfNullOrEmpty(einheit);
#endregion
#region neue Wächtermethoden in .NET 8.0
ArgumentOutOfRangeException.ThrowIfZero(betrag.Value);
ArgumentOutOfRangeException.ThrowIfNegativeOrZero(betrag.Value);
ArgumentOutOfRangeException.ThrowIfNegative(prozent);
ArgumentOutOfRangeException.ThrowIfGreaterThan(prozent, 100);
#endregion
var ergebnis = betrag * prozent / 100;
return $"{prozent}% von {betrag} {einheit} sind {ergebnis} {einheit}";
}
public void Run()
{
// 50% von 42 Euro sind 21 Euro:
Console.WriteLine(Calc(42, 50, "Euro"));
}
}
(RME)