首頁 >後端開發 >C++ >如何有效地將字符串轉換為C#中的枚舉?

如何有效地將字符串轉換為C#中的枚舉?

Susan Sarandon
Susan Sarandon原創
2025-02-02 00:46:16516瀏覽

How Can I Efficiently Convert Strings to Enumerations in C#?

優化C#

中的字符串轉換

c#提供了幾種將字符串轉換為枚舉值的方法,但是直接的StatusEnum MyStatus = StatusEnum.Parse("Active");方法並不總是理想的。 讓我們探索有效的替代方案。

利用Enum.TryParse

> 對於.net core和.net Framework 4.0及以後,

Enum.TryParse

c#7的內聯變量進一步增強了可讀性:
<code class="language-csharp">Enum.TryParse("Active", out StatusEnum myStatus);</code>

自定義擴展方法(對於較舊的框架或特定需求)
<code class="language-csharp">var myStatus = Enum.TryParse("Active", out var result) ? result : default;</code>
如果不可用,則自定義擴展方法提供靈活性:>

更全面的擴展名優雅地處理無效或無效的輸入:

>

有關擴展的重要說明:Enum.TryParse雖然擴展方法很有用,但過度使用會導致代碼混亂。 在將擴展添加到內置類型之前,請考慮上下文和潛在衝突。 在某些情況下,使用靜態幫手類可能是一種更乾淨的方法。

>

以上是如何有效地將字符串轉換為C#中的枚舉?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn