Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Админка






Сейчас, чтобы это всё продемонстрировать, мы создадим админку. План действий таков (мы его еще потом доработаем и озвучим):

· Создать модели

· Связать язык ввода и пользователя (для того, чтобы было понятно, в каком языке работает администратор или редактор)

· Создать переключение между языками

· Создать домашнюю страницу админки

· Создать контроллер по работе с постами

· Вывести посты в default/postController части

Добавим в таблицу User LanguageID:

Добавляем в IRepository.cs:

bool ChangeLanguage(User instance, string LangCode);

Реализуем в /SqlRepository/User.cs:

public bool ChangeLanguage(User instance, string LangCode)

{

var cache = Db.Users.FirstOrDefault(p => p.ID == instance.ID);

var newLang = Db.Languages.FirstOrDefault(p => p.Code == LangCode);

if (cache! = null & & newLang! = null)

{

cache.Language = newLang;

Db.Users.Context.SubmitChanges();

return true;

}

 

return false;

}

Создаем модель /Models/ViewModel/PostView.cs:

public class PostView

{

public int ID { get; set; }

 

public int UserID { get; set; }

 

public bool IsCorrectLang { get; set; }

 

public int CurrentLang { get; set; }

 

[Required(ErrorMessage = " Введите залоговок")]

public string Header { get; set; }

 

[Required]

public string Url { get; set; }

 

[Required(ErrorMessage = " Введите содержимое")]

public string Content { get; set; }

}

Строки валидации не надо вставлять в GlobalRes, так как тут мы работаем только в админке и это нам ни к чему (так как администраторы люди скромные). Но если есть другие требования, то мы знаем что делать.

Создаем /Areas/Admin/Controller/AdminController.cs:

public abstract class AdminController: BaseController

{






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.