ArcGIS Pro 3.2 API Reference Guide
ArcGIS.Desktop.TaskAssistant.Exceptions Namespace / TaskFileVersionException Class
Members Example

In This Topic
    TaskFileVersionException Class
    In This Topic
    Represents an error exception when the ArcGIS Pro .esriTasks file has the incorrect version.
    Syntax
    public sealed class TaskFileVersionException : TaskException, System.Runtime.Serialization.ISerializable  
    Public NotInheritable Class TaskFileVersionException 
       Inherits TaskException
       Implements System.Runtime.Serialization.ISerializable 
    Remarks
    The TaskFileVersionException is thrown from the GetTaskItemInfoAsync or ArcGIS.Desktop.TaskAssistant.TaskProjectItem.GetTaskItemInfoAsync methods. Use the Message property to determine the error in opening the task file.
    Example
    Get Task Information - from a TaskProjectItem
    var taskItem = Project.Current.GetItems<TaskProjectItem>().FirstOrDefault();
    // if there isn't a project task item, return
    if (taskItem == null)
      return;
    
    string message = await QueuedTask.Run(async () =>
    {
      bool isOpen = taskItem.IsOpen;
      Guid taskGuid = taskItem.TaskItemGuid;
    
      string msg = "";
      try
      {
        TaskItemInfo taskItemInfo = await taskItem.GetTaskItemInfoAsync();
    
        msg = "Name : " + taskItemInfo.Name;
        msg += "\r\n" + "Description : " + taskItemInfo.Description;
        msg += "\r\n" + "Guid : " + taskItemInfo.Guid.ToString("B");
        msg += "\r\n" + "Task Count : " + taskItemInfo.GetTasks().Count();
    
        // iterate the tasks in the task item
        IEnumerable<TaskInfo> taskInfos = taskItemInfo.GetTasks();
        foreach (TaskInfo taskInfo in taskInfos)
        {
          string name = taskInfo.Name;
          Guid guid = taskInfo.Guid;
    
          // do something 
        }
      }
      catch (OpenTaskException e)
      {
        // exception thrown if task file doesn't exist or has incorrect format
        msg = e.Message;
      }
      catch (TaskFileVersionException e)
      {
        // exception thrown if task file does not support returning task information
        msg = e.Message;
      }
      return msg;
    });
    
    ArcGIS.Desktop.Framework.Dialogs.MessageBox.Show(message, "Task Information");
    Get Task Information - from an .esriTasks file
    // TODO - substitute your own .esriTasks file
    string taskFile = @"c:\Tasks\Get Started.esriTasks";
    
    string message = await QueuedTask.Run(async () =>
    {
      string msg = "";
      try
      {
        // retrieve the task item information
        //At 2.x -
        //TaskItemInfo taskItemInfo = await TaskAssistantModule.GetTaskItemInfoAsync(taskFile);
        TaskItemInfo taskItemInfo = await TaskAssistantFactory.Instance.GetTaskItemInfoAsync(taskFile);
    
        msg = "Name : " + taskItemInfo.Name;
        msg += "\r\n" + "Description : " + taskItemInfo.Description;
        msg += "\r\n" + "Guid : " + taskItemInfo.Guid.ToString("B");
        msg += "\r\n" + "Task Count : " + taskItemInfo.GetTasks().Count();
    
      }
      catch (OpenTaskException e)
      {
        // exception thrown if task file doesn't exist or has incorrect format
        msg = e.Message;
      }
      catch (TaskFileVersionException e)
      {
        // exception thrown if task file does not support returning task information
        msg = e.Message;
      }
      return msg;
    });
    
    ArcGIS.Desktop.Framework.Dialogs.MessageBox.Show(message, "Task Information");
    Open a specific Task in a Task File - .esriTasks file
    // TODO - substitute your own .esriTasks file to be opened
    string taskFile = @"c:\Tasks\Get Started.esriTasks";
    
    await QueuedTask.Run(async () =>
    {
      try
      {
        // retrieve the task item information
        //At 2.x -
        //TaskItemInfo taskItemInfo = await TaskAssistantModule.GetTaskItemInfoAsync(taskFile);
        var taskItemInfo = await TaskAssistantFactory.Instance.GetTaskItemInfoAsync(taskFile);
    
        // find the first task
        TaskInfo taskInfo = taskItemInfo.GetTasks().FirstOrDefault();
    
        Guid guid = Guid.Empty;
        if (taskInfo != null)
        {
          // if a task exists, open it
          //At 2.x -
          //guid = await TaskAssistantModule.OpenTaskAsync(taskFile, taskInfo.Guid);
          guid = await TaskAssistantFactory.Instance.OpenTaskFileAsync(taskFile, taskInfo.Guid);
        }
        else
        {
          // else just open the task item
          //At 2.x -
          //guid = await TaskAssistantModule.OpenTaskAsync(taskFile);
          guid = await TaskAssistantFactory.Instance.OpenTaskFileAsync(taskFile);
        }
    
        // TODO - retain the guid returned for use with CloseTaskItemAsync 
      }
      catch (OpenTaskException e)
      {
        // exception thrown if task file doesn't exist or has incorrect format
        ArcGIS.Desktop.Framework.Dialogs.MessageBox.Show(e.Message);
      }
      catch (TaskFileVersionException e)
      {
        // exception thrown if task file does not support returning task information
        ArcGIS.Desktop.Framework.Dialogs.MessageBox.Show(e.Message);
      }
    
    });
    Inheritance Hierarchy

    System.Object
       System.Exception
          ArcGIS.Desktop.TaskAssistant.Exceptions.TaskException
             ArcGIS.Desktop.TaskAssistant.Exceptions.TaskFileVersionException

    Requirements

    Target Platforms: Windows 11, Windows 10

    ArcGIS Pro version: 3 or higher.
    See Also