Есть ли способ заполнить строго типизированный объект, когда структура не известна? - PullRequest
1 голос
/ 22 апреля 2010

Я хотел бы иметь возможность запрашивать любое количество баз данных с различными форматами таблиц, возвращать таблицу данных, а затем использовать эту таблицу для создания строго типизированного объекта. Есть ли что-нибудь, что делает это или подходит близко, без необходимости кодировать для каждого отдельного макета таблицы?

Заранее спасибо!

Zac

Ответы [ 5 ]

1 голос
/ 26 апреля 2010

Вы можете попробовать дозвуковой.

Это именно так, используя генерацию кода с помощью шаблонов T4.

Получить больше информации на http://subsonicproject.com/

Приветствия

Андре

1 голос
/ 23 апреля 2010

Может быть, вы можете использовать LINQ и возвращать анонимные типы http://msdn.microsoft.com/en-us/library/bb397696.aspx

например:

var result = (from itm in list where itm.StateID==2 select new {Name = itm.Name, State=Itm.StateID});
0 голосов
/ 22 апреля 2010

Предполагая, что вы пытаетесь получить преимущества Intellisense - пройдите путь генерации кода по вашим таблицам.

0 голосов
/ 23 апреля 2010

Нет.Это невозможно.

В случае наборов типизированных данных. Если вам требуется безопасность типов во время выполнения, тип должен быть определен во время разработки, или вы собираетесь использовать простые наборы данных / наборы данных дляоперации с вашей базой данных.

0 голосов
/ 22 апреля 2010

Я не уверен, что это именно то, что вы ищете, но у базового типа с данными есть метод с именем GetTypedTableSchema(), который возвращает объект XmlSchemaSet. Вы можете использовать это в качестве дорожной карты для перевода типизированных данных в строго типизированный объект.

...