예제 #1
0
        protected void AddBtn_Click(object sender, EventArgs e)
        {
            Action action = new Action
            {
                name   = actionNameTxt.Text,
                type   = "",
                rating = 0,
                range  = ""
            };
            List <Action> actionsList = new List <Action> {
            };

            actionsList.Add(action);

            SpecialAbility specialAbility = new SpecialAbility
            {
                name        = specNameTxt.Text,
                description = ""
            };
            List <SpecialAbility> specialAbilityList = new List <SpecialAbility> {
            };

            specialAbilityList.Add(specialAbility);

            Models model = new Models
            {
                name             = nameTxt.Text,
                faction          = factionTxt.Text,
                rank             = int.Parse(rankTxt.Text),
                _base            = int.Parse(baseTxt.Text),
                size             = int.Parse(sizeTxt.Text),
                deploymentZone   = depZoneTxt.Text,
                traits           = new string[] { "" },
                types            = new string[] { "" },
                defenseChart     = new string[] { "" },
                mobility         = 0,
                willpower        = 0,
                resiliance       = 0,
                wounds           = 0,
                actions          = actionsList,
                specialAbilities = specialAbilityList,
                imageUrl         = ""
            };

            jsonList.Add(model);
            File.WriteAllText(newPath, JsonConvert.SerializeObject(jsonList));

            Response.Redirect("Default.aspx");
        }
예제 #2
0
        /// <summary>
        /// Read all the validated input and transforms the data entered by the user into a model to be put on the list.
        /// </summary>
        /// <returns>The built model.</returns>
        private Mini BuildModelFromInputs()
        {
            // Action fields.
            Models.Action action = new Models.Action();
            action.Name   = ModelActionNameTextBox.Text;
            action.Type   = ModelActionTypeTextBox.Text;
            action.Rating = uint.Parse(ModelActionRatingTextBox.Text);
            action.Range  = ModelActionRangeTextBox.Text;

            if (!string.IsNullOrWhiteSpace(ModelActionDescriptionTextBox.Text))
            {
                action.Description = ModelActionDescriptionTextBox.Text;
            }

            // Special Ability fields.
            SpecialAbility specialAbility = null;

            if (!string.IsNullOrWhiteSpace(ModelSpecialAbilityNameTextBox.Text))
            {
                specialAbility      = new SpecialAbility();
                specialAbility.Name = ModelSpecialAbilityNameTextBox.Text;
                if (!string.IsNullOrWhiteSpace(ModelSpecialAbilityDescriptionTextBox.Text))
                {
                    specialAbility.Description = ModelSpecialAbilityDescriptionTextBox.Text;
                }
            }

            // Mini fields.
            Mini mini = new Mini();

            mini.Name           = ModelNameTextBox.Text;
            mini.Faction        = ModelFactionTextBox.Text;
            mini.Rank           = uint.Parse(ModelRankTextBox.Text);
            mini.Base           = uint.Parse(ModelBaseTextBox.Text);
            mini.Size           = uint.Parse(ModelSizeTextBox.Text);
            mini.DeploymentZone = ModelDeploymentZoneTextBox.Text;
            mini.Mobility       = uint.Parse(ModelMobilityTextBox.Text);
            mini.Willpower      = uint.Parse(ModelWillPowerTextBox.Text);
            mini.Resiliance     = uint.Parse(ModelResilianceTextBox.Text);
            mini.Wounds         = uint.Parse(ModelWoundsTextBox.Text);
            mini.Types          = new List <string>(ModelTypesTextBox.Text.Split(Mini.SEPARATOR));
            mini.DefenseChart   = new List <string>(ModelDefenceChartTextBox.Text.Split(Mini.SEPARATOR));
            mini.ImageUrl       = ModelImageUrlTextBox.Text;
            mini.Actions        = new List <Models.Action> {
                action
            };

            if (null != specialAbility)
            {
                mini.SpecialAbilities = new List <SpecialAbility> {
                    specialAbility
                };
            }

            if (!string.IsNullOrWhiteSpace(ModelTraitsTextBox.Text))
            {
                mini.Traits = new List <string>(ModelTraitsTextBox.Text.Split(Mini.SEPARATOR));
            }

            return(mini);
        }