Ogólna metoda typu wielokrotnego (OR)
Czytanieto, Dowiedziałem się, że możliwe jest zezwolenie na metodę akceptowania parametrów wielu typów, czyniąc ją metodą ogólną. W tym przykładzie zastosowano następujący kod z ograniczeniem typu, aby zapewnić, że „U” jestIEnumerable<T>
.
public T DoSomething<U, T>(U arg) where U : IEnumerable<T>
{
return arg.First();
}
Znalazłem więcej kodu, który pozwolił na dodanie wielu ograniczeń typu, takich jak:
public void test<T>(string a, T arg) where T: ParentClass, ChildClass
{
//do something
}
Jednak wydaje się, że ten kod wymusza toarg
musi być zarówno rodzajemParentClass
i ChildClass
. Chcę tylko powiedzieć, że arg może być rodzajemParentClass
lub ChildClass
W następujący sposób:
public void test<T>(string a, T arg) where T: string OR Exception
{
//do something
}
Twoja pomoc jest doceniana jak zawsze!