Создание простого графического интерфейса для веб-сайта с использованием .net - PullRequest
0 голосов
/ 10 февраля 2010

У меня есть пара супер простых баз данных. В основном все они состоят из отдельных таблиц, в которых сохраняются данные отслеживания / регистрации и т. Д.

Теперь я хочу перечислить эти данные, но я бы хотел найти решение, которое применимо ко всем различным таблицам во всех базах данных. Так что в основном я ищу какой-то способ / какой-то шаблон наведения решения для базы данных, генерации кода и графического интерфейса и публикации сайта. Таблицы могут содержать огромное количество строк, поэтому мне нужно функционально, например, разбивать на страницы и т. Д., Но в остальном простой список - это все, что я ищу в качестве первого шага. Я смотрел на Динамические данные от MS - это могло работать? Другие опции? Мне бы очень хотелось, чтобы веб-сайты мне ASP.NET MVC ...

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

Ответы [ 3 ]

2 голосов
/ 10 февраля 2010

Рассмотрите возможность использования ASP.NET MVC 2. Он имеет широкие возможности для создания лесов, которые могут автоматически генерировать представления для вас, но в то же время обеспечивает большую тонкую настройку

Брэд Уилсон объясняет строительные леса здесь: http://bradwilson.typepad.com/blog/2009/10/aspnet-mvc-2-templates-part-1-introduction.html

Для MVC 2 см. http://aspnet.codeplex.com/ а также http://www.asp.net/mvc/download/

Пейджинг не включен, но вы можете получить его из MVCContrib, например

1 голос
/ 10 февраля 2010

Если вы не возражаете против обязательного JavaScript, я бы предложил jqGrid. Должно быть очень просто перечислять таблицы, столбцы и генерировать из него столбцы jqGrid (colModel). Вы можете увидеть пример того, как я делаю подобную вещь здесь - она ​​делает почти точно то, что вам нужно, но для классов, а не для базы данных. Таким образом, вы не можете использовать решение «как есть», потому что оно для классов домена, но оно очень близко, вы можете взять его за основу и переписать JqGridExtensions.JqGridModel для обработки определения таблицы БД, а не определения класса домена.

Если ваш сайт должен работать без JavaScript, то будет работать либо MVC v2 со скаффолдингами, либо вы можете попробовать S # arp Architecture , которая также включает в себя собственные скаффолдинги из коробки, которые генерируют полный CRUD модель / контроллер / виды / Хранилище / и т.д.. Преимущество в том, что вы все равно будете работать с классами , а не с наборами данных. Однако, насколько я понимаю, вам придется определять scaffolding вручную для каждой сущности - но, поскольку scaffolding очень гибок, я уверен, что вы можете написать класс Uber-Scaffolding, который будет перечислять вашу базу данных и выплевывать файлы sub-scaffolding или просто позвони им прямо сейчас. A цитата :

вы программно создаете объект называется EntityScaffoldingDetails, который содержит такие детали, как имя объекта, пространство имен вместе со свойством такие детали, как имя свойства, тип, включение подписи домена, атрибуты, значения тестов по умолчанию и Детали генерации SQL.

Но мне больше нравится способ jqGrid, потому что очень просто генерировать определение модели jqGrid из схемы базы данных, которая обычно содержит все метаданные. Конечно, можно интегрировать S # arp scaffolding и jqGrid так, чтобы первый создавал последний. Преимущество скаффолдинга в том, что вы имеете полный контроль над кодом, вы можете взять его и настроить. Потому что вы не можете ожидать, что он будет на 100% автоматическим - генератор не может определить HasMany или ManyToMany, тип элемента управления, скрытые поля и т. Д. Конечно, вы можете использовать метаданные SQL (возможно, свойства), чтобы дать подсказки для вашего генератора скаффолдинга.

Теперь, если вам нужно готовое готовое решение, я не думаю, что оно есть, за исключением, может быть, коммерческих инструментов. Вышеуказанное позволит вам собрать только свой собственный. Что касается коммерческого инструмента, например, Telerik Grid сказал, что он способен «автоматически выводить свои столбцы на основе свойств элемента данных, с которым он связан».

1 голос
/ 10 февраля 2010

Вы можете свернуть свои собственные леса и сгенерировать фактические страницы, используя T4 (http://www.olegsych.com/2007/12/how-to-create-a-simple-t4-template/ и другие), или вы можете заглянуть в монорельс (http://www.castleproject.org/monorail/index.html).

)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...