В случае ситуаций использовать параметры типа несколько Params в методах, что является альтернативным, потому что я получаю ошибку при попытке использовать параметры типа несколько ParamsНесколько параметров типа PARAMS в mehods в C#
ответ
Используйте простые массивы вместо:
public void Method(/*remove params*/ string[] first
, /*optionally remove params*/ int[] second
)
{ }
Вызов его:
Method(new string[] { ... }, new int[] { ... });
Необязательно, вы можете оставить последний params
как есть, так как он может быть только один по методу и должен быть последним, согласно MSDN:
Никакие дополнительные параметры не допускаются после Params ключевого слова в объявлении метода, и только один параметры ключевых слов допускается в объявлении метода.
Для упрощенного использования я бы воспользовался решением Патрика Хофмана. Хотя, всякий раз, когда вы хотите сделать что-то более специфичное для конкретного типа и включающее более широкий диапазон типов, я бы сказал, что вы должны использовать params
.
public class Bar { }
public void Foo(params object[] objs)
{
foreach(object obj in objs)
{
Type typeofObject = obj.GetType();
if (typeofObject == typeof(string))
{
// Its a string
}
else if (typeofObject == typeof(int))
{
// Its an integer
}
else if (typeofObject == typeof(Bar))
{
// Its an Bar object
}
}
}
Вызов метода:
Bar bar = new Bar();
this.Foo("hi", 1, bar);
Но опять же, это не является правильным решением, если у вас есть только 2/3 типов.
'OP использует 2'? Я действительно не получаю эту часть, 2 что? Типы? Он сказал несколько типов, которые могут быть 5 или даже 10. –
Тогда мой код отвечает на его вопрос? Он может поставлять все типы, которые он хочет для моего метода, но, как я сказал: это зависит от того, как он хочет использовать свои типы внутри метода. –
- 1. параметров универсального типа для ковариантного Params массива
- 2. несколько параметров типа
- 3. несколько параметров типа в тип класса
- 4. Добавить Params в сильных параметров
- 5. Использование ключевого слова «params» для общих параметров в C#
- 6. C# делегатов без Params или возврата типа
- 7. Перегрузка Mehods
- 8. Как передать несколько параметров массиву params в WPF MarkupExtension?
- 9. напечатать несколько параметров в c
- 10. AsyncTask в doInBackground (Params ... PARAMS) отправка различных типов параметров
- 11. Добавление дополнительных параметров в AsynchTask doInBackground (Params ... params)
- 12. несколько параметров в @selector в Objective-C
- 13. Опубликовать список значений параметров params
- 14. Проверка параметров типа обобщенного метода в C#
- 15. создания и передачи типа параметров в C#
- 16. Scala: несколько параметров типа для неявного класса
- 17. Несколько параметров в mvc4
- 18. Рефакторинг: несколько параметров в поиске
- 19. C# Generic Несколько параметров
- 20. Неверные mehods называются
- 21. Несколько параметров в Angular 2
- 22. Android: Несколько PARAMS в AsyncTask
- 23. Несколько Params в JSP Включить
- 24. несколько PARAMS в тузде заявлении
- 25. Организация VB.Net Mehods
- 26. Использование пустых параметров в quoted_parameters (Params)
- 27. Какого типа Params в андроиде AsyncTask-> выполнить (Params ...)
- 28. несколько выходных параметров в веб-службе .NET (без сложного типа)
- 29. Как передать несколько параметров в Objective-C?
- 30. Несколько условных параметров в SQL и C#
показать свой код. –
Опубликовать свой заголовок метода –
Зачем вам нужны несколько параметров типа параметров .. –