ArcGIS Pro 3.3 API Reference Guide
ArcGIS.Desktop.TaskAssistant Namespace / TaskAssistantFactory Class / GetTaskItemInfoAsync Method
Full path to an .esriTasks file.
Example

In This Topic
    GetTaskItemInfoAsync Method (TaskAssistantFactory)
    In This Topic
    Gets information about the task item stored in an ArcGIS Pro .esriTasks file.
    Syntax
    public Task<TaskItemInfo> GetTaskItemInfoAsync( 
       string taskFile
    )
    Public Function GetTaskItemInfoAsync( _
       ByVal taskFile As String _
    ) As Task(Of TaskItemInfo)

    Parameters

    taskFile
    Full path to an .esriTasks file.

    Return Value

    A Task returning the TaskItemInfo of the task file opened.
    Exceptions
    ExceptionDescription
    Error opening the task file. For example the taskFile is invalid.
    Error opening the task file. The task file version is invalid.
    Example
    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);
      }
    
    });
    Requirements

    Target Platforms: Windows 11, Windows 10

    ArcGIS Pro version: 3 or higher.
    See Also