У меня есть DataTable
объект данных испытаний:Получить имя переменной, не называя его
DataTable testData = new DataTable();
Я хотел бы назначить данные для переменных, которые являются такими же, как имена столбцов. Я могу сделать это так:
string foo = testData.Rows[1]["foo"].ToString();
string bar = testData.Rows[1]["bar"].ToString();
или:
string foo = testData.Rows[1][nameof(foo)].ToString();
string bar = testData.Rows[1][nameof(bar)].ToString();
Но я не хочу называть имя переменной каждый раз, когда я хотел бы использовать somethink так:
string foo = testData.Rows[1][nameof(this)].ToString();
string bar = testData.Rows[1][nameof(this)].ToString();
Возможно ли это?
Выглядит как XY-проблема для меня. Что такое * актуальная * проблема, которую вы пытаетесь решить? Зачем вам вообще нужно извлекать данные для какой-либо именованной переменной? –
Когда какое-либо конкретное выражение анализируется, компилятор не учитывает, находится ли это конкретное выражение в правой части оператора присваивания. Это, конечно, не приводит к какой-либо информации в качестве своего рода контекста. –
@Damien_The_Unbeliever, это лучший ответ на мой вопрос - это невозможно, и теперь я знаю почему. – kotoj