UnitsOfWork.Unit.Parse C# (CSharp) Method

Parse() public static method

public static Parse ( IList unitParts ) : Unit
unitParts IList
return Unit
        public static Unit Parse(IList<string> unitParts)
        {
            return new Unit
            {
                Name = unitParts[0],
                Type = unitParts[1],
                Attack = int.Parse(unitParts[2])
            };
        }

Usage Example

Beispiel #1
0
        public static void Main()
        {
            var game        = new Game();
            var finalResult = new StringBuilder();

            var line = Console.ReadLine();

            while (line != "end")
            {
                var command = Command.Parse(line);

                switch (command.Name)
                {
                case "add":
                    var unit  = Unit.Parse(command.Arguments);
                    var added = game.Add(unit);
                    if (added)
                    {
                        finalResult.AppendLine(string.Format("SUCCESS: {0} added!", unit.Name));
                    }
                    else
                    {
                        finalResult.AppendLine(string.Format("FAIL: {0} already exists!", unit.Name));
                    }

                    break;

                case "remove":
                    var name    = command.Arguments[0];
                    var removed = game.Remove(name);
                    if (removed)
                    {
                        finalResult.AppendLine(string.Format("SUCCESS: {0} removed!", name));
                    }
                    else
                    {
                        finalResult.AppendLine(string.Format("FAIL: {0} could not be found!", name));
                    }

                    break;

                case "find":
                    var type  = command.Arguments[0];
                    var found = game.FindByType(type);
                    finalResult.AppendLine(string.Format("RESULT: {0}", string.Join(", ", found)));

                    break;

                case "power":
                    var mostPowerful = game.MostPowerful(int.Parse(command.Arguments[0]));
                    finalResult.AppendLine(string.Format("RESULT: {0}", string.Join(", ", mostPowerful)));

                    break;

                default:
                    throw new InvalidOperationException();
                }

                line = Console.ReadLine();
            }

            Console.WriteLine(finalResult.ToString().Trim());
        }