любые идеи для предотвращения дублирующего кода в C# и JavaScript

у меня есть asp.net mvc веб-сайт, где я создаю большую часть страницы с помощью C#, например, создающего таблицы HTML, данные ряд данных из моего viewmodel

у меня также есть много JavaScript, который тогда динамично изменяет эти таблицы (добавьте строку, например).

код JavaScript для добавления новой строки выглядит чрезвычайно подобным моему коду "рендеринга", который я имею в C#, который используется для создания таблицы HTML во-первых.

Каждый раз, когда я изменяю код c# на добавление нового поля, я должен не забыть возвращаться к коду JavaScript, чтобы сделать то же.

здесь существует ли лучший путь?

9
задан leora 18 January 2010 в 06:31
поделиться

2 ответа

Один из способов сделать это - разоблачить логику, которая генерирует разметку как веб-сервис на вашем сервере, и заставить JavaScript получить эту разметку с помощью вызова AJAX, а не дублировать логику.

Таким образом, вы можете вызвать что-то вроде CreateRow метода из JavaScript, который будет на самом деле вызывать ту же самую логику, которую вы использовали на сервере, когда отображали страницу.

8
ответ дан 3 November 2019 в 03:47
поделиться

Посмотрите на статью Скотта Гу: ASP.NET MVC 2: Model Validation

В основном, вы определяете валидацию на уровне свойств модели, и ASP.NET MVC 2 может автоматически генерировать и соответствующую валидацию на стороне клиента.

К сожалению, это может означать, что Вам придется все рефакторинговать в MVC, но многие ppl здесь, вероятно, рассматривают это как плюс.

(отказ от ответственности: я вообще не работал с ASP.NET MVC)

.
0
ответ дан 3 November 2019 в 03:47
поделиться
Другие вопросы по тегам:

Похожие вопросы: