優化C#
中的字符串轉換c#提供了幾種將字符串轉換為枚舉值的方法,但是直接的StatusEnum MyStatus = StatusEnum.Parse("Active");
方法並不總是理想的。 讓我們探索有效的替代方案。
利用Enum.TryParse
Enum.TryParse
<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中文網其他相關文章!