ASP MVC2 - Схема динамического поля - PullRequest
1 голос
/ 30 мая 2010

Я новичок в MVC и ADO.net Entity Framework. Вместо того, чтобы создавать редактирование / отображение для каждой сущности, я хотел бы, чтобы базовый класс контроллера генерировал код представления и проверки на основе метаданных, хранящихся в таблице - что-то в этом роде.

Я бы предположил, что нечто подобное уже сделано, или есть веские причины не делать этого. Любое понимание или предложения приветствуются.

Ответы [ 2 ]

1 голос
/ 30 мая 2010

Отображение может быть сделано с помощью Html.DisplayForModel () или Html.EditorForModel (). Это создает представление для рендеринга сущности, но, вероятно, не будет выглядеть так, как вам нравится. Я думаю, что он может внедрить валидаторы, но он основан на аннотациях данных, а не на метаданных LINQ to Entity DB.

Насколько я знаю, я не знаю ничего, что автоматически засасывало бы метаданные модели L2E ... Я тоже думал о том, чтобы что-то написать, поскольку это было бы очень удобно иметь.

НТН.

0 голосов
/ 04 июня 2010

Мне не нравится отвечать на мой собственный вопрос, но я нашел библиотеку - [ASP.Net Dynamic Forms] [1] - которая была в значительной степени именно то, что мне нужно.

Он довольно хорошо написан, не слишком сложен и легко расширяем. Автор исходного кода оставляет реализацию очень открытой, так что я до сих пор смог легко создать слой sql, в котором находятся настройки формы, код выглядит примерно так -

`string controllerName = controllerType.ToString ();

        Form form = new Form();
        List<FormSetting> settings = new DataEntities().FormSettings.Where((c => c.ControllerName == controllerName)).ToList();

        foreach (FormSetting setting in settings)
        {
            Field fieldToAdd = CreateField(setting);
            form.Fields.Add(fieldToAdd);
        }`

[1]: http://mvcdynamicforms.codeplex.com/.

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