Generic method multiple (OR) type constraint
asp.net-mvc-3, c#, types
Solution
That is not possible. You can, however, define overloads for specific types:
public void test(string a, string arg);
public void test(string a, Exception arg);
If those are part of a generic class, they will be preferred over the generic version of the method.
Problem
Reading this, I learned it was possible to allow a method to accept parameters of multiple types by making it a generic method. In the example, the following code is used with a type constraint to ensure "U" is an `IEnumerable<T>`. ``` public T DoSomething<U, T>(U arg) where U : IEnumerable<T> { return arg.First(); } ``` I found some more code which allowed adding multiple type constraints, such as: ``` public void test<T>(string a, T arg) where T: ParentClass, ChildClass { //do something } ``` However, this code appears to enforce that `arg` must be both a type of `ParentClass` and `ChildClass`. What I want to do is say that arg could be a type of `ParentClass` or `ChildClass` in the following manner: ``` public void test<T>(string a, T arg) where T: string OR Exception { //do something } ``` Your help is appreciated as always!