Получить имя таблицы из поля ADO.NET?

Если я выберу user.name, user.post, t.name с t равным tag_name AS t, есть ли способ разрешить полное имя с помощью ADO.NET?

Я нашел SqlDataReader.GetName, но это дает мне только name в качестве первого результата. Я хотел бы знать, принадлежит ли он пользователю или tag_name. Есть ли способ, чтобы он сказал мне?


person Community    schedule 12.01.2010    source источник


Ответы (3)


К тому времени, когда результаты возвращаются на ado.net, исходная исходная таблица полей исчезает — все, что у вас есть, — это имена полей.

person Ray    schedule 12.01.2010

Вы можете использовать псевдоним для своего поля с именем таблицы в качестве префикса, прочитать имя поля и манипулировать им в клиенте.

select a.column1 as [users column1],b.column2 as [tag_name column2] from users a     left join tag_name b on a.col = b.col blah blah....
person Richard Friend    schedule 12.01.2010

Рэй прав в том, что ado.net не дает вам этого. Что я делал в прошлом, так это получал SQL из хранимой процедуры или представления и выполнял некоторые манипуляции со строками, чтобы решить это.

person Carl Rippon    schedule 12.01.2010