Passing array to function that takes either params object[] or IEnumerable<T>
问题 I want to pass an array of custom objects to a function like String.Join which has the following signatures: public static string Join(string separator, params Object[] values) public static string Join(string separator, IEnumerable<T> values) If I call the function like this: var arr = new MyClass[]{ new MyClass(), new MyClass() }; string text = string.Join("\n", arr); I get a compiler error: The call is ambiguous between the following methods or properties: 'string.Join(string, params