// Konstruktor tworzący kompletny obiekt zawierający wszystkie dane dotyczące gracza. Tworzony // jest nowy plik XML (lub nadpisywany istniejący) zawierający informacje o graczu. // // todo: Pliki są tworzone również dla anonimowych użytkowników (niezalogowanych), można // by zrobić mechanizm, który będzie usuwał stare pliki, żeby nie zajmowały miejsca na // serwerze. Dostęp do pliku z poziomu niezalogowanego użytkownika jest obecnie niemożliwy. public CharacterDbModel( Character character, ApplicationUser user = null ) : this(user) { // Tworzenie pliku XML (nadpisuje istniejące pliki) XmlModels.Character characterXml = new XmlModels.Character(character); // Aktualizacja danych w modelu CharacterName = character.Name; ChartID = character.ChartID; CharacterID = character.CharacterID; AvatarImgSrc = character.AvatarImg; CharacterDataSrc = DefaultConstants.Application.DefaultXmlLocalization( CharacterID.ToString(), DefaultConstants.Application.DefaultCharacterXmlFolder ); }
public CharacterViewModel( Character Model ) { CharacterID = Model.CharacterID; ChartID = Model.ChartID; UserID = Model.UserID; UserData = Model.UserData; Name = Model.Name; AvatarImg = Model.AvatarImg; Equipment = Model.Equipment; Description = Model.Description; Data = Model.Data; Stats = Model.Stats; Attributes = Model.Attributes; Skills = Model.Skills; IsDescription = Model.IsDescription; IsEquipment = Model.IsEquipment; }
public async Task<ActionResult> Create(CharacterViewModel Model) { if (ModelState.IsValid) { var user = db.Users.Find(User.Identity.GetUserId()); Character characterModel = new Character( Request.Form, Request.Files, user); CharacterDbModel dbModel = new CharacterDbModel( characterModel, user); db.Characters.Add(dbModel); await db.SaveChangesAsync(); return RedirectToAction("Index"); } return View(Model); }
public async Task<ActionResult> Edit(CharacterDbModel character) { if (ModelState.IsValid) { var user = db.Users.Find(User.Identity.GetUserId()); Character characterModel = new Character( Request.Form, Request.Files, user); CharacterDbModel dbModel = new CharacterDbModel( characterModel, user); db.Entry(character).State = EntityState.Modified; await db.SaveChangesAsync(); return RedirectToAction("Index"); } return View(character); }