共用方式為


Null 時的活動作業名稱

自 .NET 8 起,針對作業名稱,如果您使用 null 建立 Activity 物件,作業名稱將儲存為空白字串 (""),而不是 null

先前的行為

在先前版本中,如果您使用 null 作業名稱建立 Activity 物件,活動內部的作業名稱已儲存為 null

new Activity(operationName: null).OperationName // Value is null.

新的行為

自 .NET 8 起,如果您使用 null 作業名稱建立 Activity 物件,作業名稱會儲存為空白字串。

new Activity(operationName: null).OperationName // Value is "".

導入的版本

.NET 8 Preview 1

中斷性變更的類型

此變更為行為變更

變更原因

Activity 物件中的 null 作業名稱可能會對後端追蹤收集器產生不良的影響,意即會採用非 Null 作業名稱。 為了避免損毀,追蹤收集器必須在 Activity 物件內特別處理 null 作業名稱。 此變更會移除特殊案例需求。

此變更不太可能會造成中斷,因為在建立 Activity 物件時使用 null 的情況很少見。 如果基於任何原因,您的程式碼相依於作業名稱的 null 值,請將程式碼調整為不使用 null,或者預期在指定 null 時作業名稱將儲存為空白字串。

受影響的 API