Asp.net MVC: редактировать HTML-контроль для администратора - PullRequest
0 голосов
/ 28 февраля 2010

У меня есть веб-приложение Asp.net MVC, содержащее в основном текст. Я хочу добавить в него функцию, чтобы администратор мог легко редактировать текст / HTML, используя Интернет. Это может быть двойной щелчок на странице и преобразование ее в редактируемую и сохраняемую. Как мне это сделать? любой пример кода?

Мне нужно это сделать для Asp.net MVC.

Ответы [ 3 ]

2 голосов
/ 01 марта 2010

Используйте плагин jQuery Edit in Place .

  • Убедитесь, что у вас есть таблица базы данных со строкой для каждого абзаца (это также может быть файл XML или какой-либо другой способ хранения структурированных данных)
  • При рендеринге ваших страниц, чтобы каждый <p> имел класс 'editable'
  • Когда пользователь, запрашивающий страницу, является администратором, выполните

    $ (документ) .ready (function () { $ ( 'P.editable') для редактирования (...). });

  • Когда администратор редактирует текст, отправьте его на действие, подобное этому:

    публичный JSONResult Edit (int id, строковое содержимое) { / * Обновление контента / / Возвращает новый текст из базы данных (в случае, если что-то пошло не так, данные не изменились - вы можете вернуть структуру данных JSON, сигнализирующую об ошибке * / вернуть Json (newcontent); }

  • Включить новое содержание в абзац.

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

вам нужно будет предоставить controller actions и соответствующий Views для Edit операции. Затем вы можете ограничить это действие / операцию только для администратора, используя Безопасность инфраструктура, предоставленная Asp.Net.

что-то похожее

public ActionResult Edit(int id)
{
    var dataToEdit = (from c in _entities.ContactSet
                           where c.Id == id
                           select c).FirstOrDefault();

    return View(contactToEdit);
}

Взгляните на этот урок, он даст представление о том, как он работает

0 голосов
/ 30 марта 2010

Проверьте мой проект codeplex @ http://editregion.codeplex.com/. Он в значительной степени выполняет то, что вы описываете, и хранит контент в файлах xml в папке app_data и может быть достаточным для ваших целей.

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