Доброго времени суток. Для своего проекта понадобилось в переменную засунуть тип данных. Приведу пример:
var type = int;
float b = 1.0f;
type a = 1;
int c = (type)b;
Есть еще метод GetType, где в условии с помощью typeof можно проверить соответствие типов, но как сделать так, чтобы в переменную сохранить тип и дальше обращаться к переменной и использовать сохраненный тип?
Уточнения: есть класс Table, которые содержит в себе 7 свойств. Среди них встречаются свойства типа int, float, DateTime, string. Еще в этом же классе определен enum Category, в котором перечислены все эти свойства. Далее определен метод GеtCategory(enum Category type), который возвращает object. По сути вы указываете имя свойства через enum и он вам возвращает значение этого свойства, а так как типы разные, возвращает object. Далее в другом классе существует метод, который должен из списка List{Table} вернуть список одного из его свойств, но так как я опять же не знаю какoй тип будет выбран, возвращает он просто object. Но, когда мне пришлось использовать оператор "+=" object не прокатил.
Используемый метод:
public static object GetOriginalOptions(Table.Category type)
{
Type obj = new Table().GetCategory(type).GetType();
WriteAndRead file = new WriteAndRead();
List<Table> list = Table; list.Sort();
if (obj == typeof(int))
{
List<int> options = new List<int>();
options.Add((int)list[0].GetCategory(type));
for (int i = 1, j = 0; i < list.Count; i++)
if (list[i].Date == list[i - 1].Date)
options[j] += (int)list[i].GetCategory(type);
else if (list[i].Date != list[i - 1].Date)
{
options.Add((int)list[i].GetCategory(type));
j++;
}
}
else if (obj == typeof(float))
{
List<float> options = new List<float>();
options.Add((float)list[0].GetCategory(type));
for (int i = 1, j = 0; i < list.Count; i++)
if (list[i].Date == list[i - 1].Date)
options[j] += (float)list[i].GetCategory(type);
else if (list[i].Date != list[i - 1].Date)
{
options.Add((float)list[i].GetCategory(type));
j++;
}
}
return GetOptions(type);
}
Оборудование для ресторана: новинки профессиональной кухонной техники
Частный дом престарелых в Киеве: комфорт, забота и профессиональный уход
У меня есть сборка - exe-шник и несколько dll для работы с программойУстанавливал их из Nuget
Нужен аналог uploadString для питона, что бы данные поступали в php://input