diff --git a/src/Dapr.Workflow/WorkflowState.cs b/src/Dapr.Workflow/WorkflowState.cs
index 3082cd8a6..d2651e4f5 100644
--- a/src/Dapr.Workflow/WorkflowState.cs
+++ b/src/Dapr.Workflow/WorkflowState.cs
@@ -32,6 +32,11 @@ internal WorkflowState(WorkflowMetadata? metadata)
_metadata = metadata;
}
+ ///
+ /// Gets the name of the requested workflow that the state corresponds to.
+ ///
+ public string? WorkflowName => _metadata?.Name;
+
///
/// Gets a value indicating whether the requested workflow instance exists.
///
diff --git a/test/Dapr.Workflow.Test/WorkflowStateTests.cs b/test/Dapr.Workflow.Test/WorkflowStateTests.cs
index 8cc093f2a..cc35d7c7d 100644
--- a/test/Dapr.Workflow.Test/WorkflowStateTests.cs
+++ b/test/Dapr.Workflow.Test/WorkflowStateTests.cs
@@ -31,6 +31,7 @@ public void Properties_ShouldReturnDefaults_WhenMetadataIsNull()
Assert.Equal(DateTime.MinValue, state.LastUpdatedAt.DateTime);
Assert.Equal(WorkflowRuntimeStatus.Unknown, state.RuntimeStatus);
Assert.Null(state.FailureDetails);
+ Assert.Null(state.WorkflowName);
Assert.Equal(default, state.ReadInputAs());
Assert.Equal(default, state.ReadOutputAs());
@@ -60,6 +61,7 @@ public void Properties_ShouldReflectMetadata_WhenPresent()
Assert.Equal(created, state.CreatedAt.DateTime);
Assert.Equal(updated, state.LastUpdatedAt.DateTime);
Assert.Equal(WorkflowRuntimeStatus.Running, state.RuntimeStatus);
+ Assert.Equal("wf", state.WorkflowName);
}
[Fact]