Я хочу создать таблицу динамически, взяв значения из представления сетки.
На самом деле я хочу создать таблицу динамически, взяв значения из представления сетки.
т. е. значения заголовка представления сетки должны приниматься в качестве столбцов таблицы.
То есть в базе данных таблица должна хранить именно то, как данные представлены в виде сетки.
Что я уже пробовал:
Я задавал этот вопрос многим профессорам в моем университете, и никто не мог мне в этом помочь. Так что это моя последняя попытка, так как я понятия не имею, как ее закодировать.
Gerry Schmitz
Уже запустили "сетку"?
Держу пари, что нет.
Member 13858616
Да, это сетка данных, которая отображается на моей веб - странице после некоторых манипуляций с кодом.
Member 13858616
Его полностью сгенерированная сетка. Все данные доступны в сетке.
Gerry Schmitz
Тогда эта "сетка" - это HTML-таблица, которую вы, Excel и т. д. можете "выскрести" и поместить в таблицу.
И поскольку это также "ваша веб-страница", у вас также есть доступ к "исходным данным".
Итак, ваши "профессора" не похожи на "настоящих" профессоров...
Eric Lynch
Если вам интересно, почему вы получили так мало ответов, то это потому, что вы даже не предоставили никаких подробностей для людей, которые хотят помочь. Там так мало деталей, что люди даже не знают, какие вопросы задавать, чтобы получить недостающую деталь.
Термины "сетка" и "веб-страница" до смешного универсальны. Существуют очень разные подходы к презентации. Большинство современных веб-приложений извлекают данные через службу RESTful и выполняют презентационную работу (создание HTML-кода для сетки) на стороне клиента. Старые веб-приложения (и некоторые современные) создают HTML на стороне сервера. Любая подсказка о базовой архитектуре вашего приложения может помочь людям задавать разумные вопросы.
При любой архитектуре, в конечном счете, существует некоторый источник данных для сетки. Это может быть класс DataTable или набор строго типизированных объектов. Любая подсказка об источнике данных и, что более важно, о природе этих данных может помочь людям задавать разумные вопросы.
Предполагая, что мы знаем что-нибудь о приложении или данных, следующий вопрос будет именно то, что вы пытаетесь сделать. Похоже, если я правильно прочитал, вы хотите сгенерировать схему базы данных, создать таблицу базы данных из этой схемы и заполнить ее данными из вашего приложения.
Если это правильно, то это очень необычное требование. Нам нужно понять больше о том, почему? Например, могут ли пользователи добавлять и удалять столбцы из вашей сетки? Могут ли они изменять имена столбцов? Могут ли они изменить типы данных для этих столбцов? Если ответ на все эти вопросы "нет", то нет никакой необходимости динамически генерировать что-либо. Есть гораздо лучшие подходы, которые могут предложить люди.
Если вы действительно предоставляете пользователю возможность напрямую влиять на создание таблиц базы данных через свою веб-страницу, то это дизайн, который несет в себе изрядную долю риска, как для стабильности приложения, так и для потенциальной безопасности.
Если это правильно, я бы рекомендовал отказаться от такого подхода. Есть почти всегда лучшие подходы, если требования действительно поняты.
Предполагая, что все это правда, и вы готовы взять на себя риск, мы должны были бы лучше уточнить "точно хранить". В C# есть типы данных, которые просто не существуют в некоторых базах данных. Что, я думаю, поднимает еще один вопрос: какую базу данных вы используете (SQL Server, MySQL, Oracle и т. д.)? Существуют различия в синтаксисе и типах данных между базами данных.
Последний вопрос заключается в том, что вы планируете делать с данными после их хранения? Будет ли веб - страница пытаться запросить его позже? Если пользователь может изменить схему через веб-страницу, а вы запросите таблицу позже, как вы планируете узнать об изменении схемы? Вам также нужно знать, как запрашивать метаданные таблиц из базы данных?
Короче говоря, я думаю, что вам нужно более тщательно рассмотреть свои требования и сформулировать их, прежде чем кто-либо даже знает, какие вопросы вам задать, чтобы они могли помочь.
Member 13858616
Есть решение.. спасибо братан