public static void Demo1() { IStudentRepository repo = new StudentsDuringPartyRepository(); foreach (var student in repo.GetAll() .Where(student => student.Motivation > 5.0m && student.FirstName.StartsWith("A")) .OrderBy(student => student.FirstName)) { // Foo } }
public static void AsIs() { IStudentRepository repo = new StudentsDuringPartyRepository(); try { var fail = (StudentsDuringTestRepository)repo; } catch (InvalidCastException) { } // mit is kann getestet werden, ob eine Typkonvertierung erfolgreich wäre Console.WriteLine(repo is StudentsDuringTestRepository); // false // mit as kann eine Typkonvertierung durchgeführt werden // wenn die Typen nicht kompatibel oder null sind, wird auf null evaluiert var dasIstNull = repo as StudentsDuringTestRepository; }