Esempio n. 1
0
        public Object Map(CreateOrEditViewModel createOrEdit)
        {
            Object @object = new Object();

            if (createOrEdit.Id != null)
            {
                @object = this.handler.Storage.GetRepository <IObjectRepository>().WithKey((int)createOrEdit.Id);
            }

            else
            {
                @object.ClassId = (int)createOrEdit.ClassId;
            }

            @object.ViewName = createOrEdit.ViewName;

            Class @class = this.handler.Storage.GetRepository <IClassRepository>().WithKey(@object.ClassId);

            if (@class.IsStandalone == true)
            {
                @object.Url = createOrEdit._Url;
            }

            else
            {
                @object.Url = null;
            }

            return(@object);
        }
        public Object Map(CreateOrEditViewModel createOrEdit)
        {
            Object @object = new Object();

              if (createOrEdit.Id != null)
            @object = this.handler.Storage.GetRepository<IObjectRepository>().WithKey((int)createOrEdit.Id);

              else @object.ClassId = (int)createOrEdit.ClassId;

              Class @class = this.handler.Storage.GetRepository<IClassRepository>().WithKey(@object.ClassId);

              if (@class.IsStandalone == true)
            @object.Url = createOrEdit._Url;

              else @object.Url = null;

              return @object;
        }
        public IActionResult CreateOrEdit(CreateOrEditViewModel createOrEdit)
        {
            if (this.ModelState.IsValid)
              {
            Object @object = new CreateOrEditViewModelMapper(this).Map(createOrEdit);

            if (createOrEdit.Id == null)
              this.Storage.GetRepository<IObjectRepository>().Create(@object);

            else this.Storage.GetRepository<IObjectRepository>().Edit(@object);

            this.Storage.Save();
            this.CreateOrEditProperties(@object);
            this.CreateOrEditRelations(@object);
            new CacheManager(this).CacheObject(@object);
            return this.Redirect(this.Request.CombineUrl("/backend/objects"));
              }

              return this.CreateRedirectToSelfResult();
        }