Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / WinForms, .Net Framework Новый топик    Ответить
 Как создать динамический класс  [new]
n_string
Member [заблокирован]

Откуда: Бескрайний Север
Сообщений: 2835
Имеется ~ 100 С++ небольших приложений, которые хранят данные на SQL сервере.
Каждое приложение хранит свои свойства в своей таблице. Связи между таблицами настолько сложны, что вставить текущие данные для обработки неподготовленному пользователю практически невозможно. Поэтому данные набивают программисты вручную, в общем, это уже достало. Как бы создать такую кнопку «Пыщь», чтобы нажимать ее мог офисный планктон? Проблема в том, что входные данные сильно различаются, но соответствуют свойствам каждого приложения, то есть можно выполнить SELECT и получить поля класса. Затем, например, динамически создать этот класс/тип в приложении C#, заполнить данными в генерике и сделать INSERT в БД. Но как создать такой класс? Коллеги, предложите идею, как реализовать заплатку на шарпе?
2 май 10, 22:04    [8719847]     Ответить | Цитировать Сообщить модератору
 Re: Как создать динамический класс  [new]
Яростный Меч
Member [скрыт]

Откуда:
Сообщений: 28904
n_string
Но как создать такой класс?
Если под классом подразумевается набор полей, то можно попробовать Dictionary<string, object>
2 май 10, 22:57    [8719925]     Ответить | Цитировать Сообщить модератору
 Re: Как создать динамический класс  [new]
Где-то в степи
Member

Откуда: Под Таганрогом
Сообщений: 4370
Смею предположить, что вам поможет Nhibernate или еще что из ORM
2 май 10, 23:00    [8719931]     Ответить | Цитировать Сообщить модератору
 Re: Как создать динамический класс  [new]
n_string
Member [заблокирован]

Откуда: Бескрайний Север
Сообщений: 2835
Яростный Меч
то можно попробовать Dictionary<string, object>
Не доходит, можно чуть подробней? Все типы привести к string. Хм, это возможно, в бд почти все поля string. Здесь мне непонятна сама архитектура, оперировать словарем?
2 май 10, 23:25    [8719954]     Ответить | Цитировать Сообщить модератору
 Re: Как создать динамический класс  [new]
Где-то в степи
Member

Откуда: Под Таганрогом
Сообщений: 4370
n_string,

как создать такой класс: Есть куча мапперов, которые на основе таблицы создают класс под таблицу, в результате селекта к таблице базы вы получаете массив уже готовых объектов на основе полученного класса, можете изменять поля этих объектов, можете добавлять новые, сохранять их удалять из таблицы.
эти объекты через мап держат связи с другими таблицами и т.д.
3 май 10, 00:24    [8720057]     Ответить | Цитировать Сообщить модератору
 Re: Как создать динамический класс  [new]
Где-то в степи
Member

Откуда: Под Таганрогом
Сообщений: 4370
если вы прикрутите к этому XAML технологию и будете хранит его в свободном поле таблицы, вы получите автономное мини приложение (форму) для изменения данных таблицы на основе объектов
3 май 10, 00:32    [8720071]     Ответить | Цитировать Сообщить модератору
 Re: Как создать динамический класс  [new]
n_string
Member [заблокирован]

Откуда: Бескрайний Север
Сообщений: 2835
Вашу мысль понял, тепеь постараюсь понять, как ее реализовать. Спасибо.
3 май 10, 10:57    [8720412]     Ответить | Цитировать Сообщить модератору
Все форумы / WinForms, .Net Framework Ответить