コード例 #1
0
        public override void Restore(MyProject project)
        {
            string[] idSplit = PropertyId.Split(new[] { SerializationIdSeparator }, StringSplitOptions.RemoveEmptyEntries);

            Node = FindNode(project, idSplit[0]);

            var workingNode = Node as MyWorkingNode;

            if (workingNode == null)
            {
                throw new SerializationException("A task dashboard property found a node without tasks");
            }

            Task = workingNode.GetTaskByPropertyName(idSplit[1]);

            if (Task == null)
            {
                throw new SerializationException("A task dashboard property did not find the target task");
            }

            PropertyInfo = Task.GetType().GetProperty(idSplit[2]);

            if (PropertyInfo == null)
            {
                throw new SerializationException("A task dashboard property was not found on the task");
            }
        }
コード例 #2
0
        public override void Restore(MyProject project)
        {
            string[] idSplit = PropertyId.Split(SerializationIdSeparator.ToCharArray());

            Node = FindNode(project, idSplit[0]);

            PropertyInfo = Node.GetType().GetProperty(idSplit[1]);

            if (PropertyInfo == null)
            {
                throw new SerializationException("A dashboard property was not found on the node");
            }
        }
コード例 #3
0
        public override void Restore(MyProject project)
        {
            string[] idSplit = PropertyId.Split(new[] { SerializationIdSeparator }, StringSplitOptions.RemoveEmptyEntries);

            MyNode node = FindNode(project, idSplit[0]);

            WorkingNode = node as MyWorkingNode;
            if (Node == null)
            {
                throw new SerializationException(string.Format("Node id {0} was found but doesn't contain tasks", node.Id));
            }

            string    taskGroupName = idSplit[1];
            TaskGroup taskGroup;

            if (!WorkingNode.TaskGroups.TryGetValue(taskGroupName, out taskGroup))
            {
                throw new SerializationException(string.Format("Task group {0} not found", taskGroupName));
            }

            TaskGroup = taskGroup;
        }