Массив вариантов в C#
В C# я хочу объявить функцию с массивом Dinamic, которая принимает типы примитивов любого типа, такие как (string, integer, doubles, datetime....), но эти типы не являются объектами, а являются просто базовыми типами. Есть каким-то образом это сделать?
2 ответа
Решение
Приведенный выше код работает, но есть ограничение, он не работает с различными типами данных, таких как
MyFunc(new[] {"alpha", 123, 01-02-2002});
Этот код ниже работает со строкой, int и датой
public bool ArrayVariant(string pQuery, ICollection collection)
{
foreach (var item in collection)
{
//do something with item
}
}
и вызвать функцию
ArrayVariant( "any data", new dynamic[] {"teste", 0, DateTime.Now});
Как насчет
public static void MyFunc(params object[] items)
{
foreach (object item in items)
// Do somthing with item
}
Назови это как
MyFunc("test", 0, DateTime.Now);