VS2005 中的 C#:能否检查给定 Enum 类型中是否声明了整数?

发布于 2024-09-07 14:22:23 字数 212 浏览 0 评论 0原文

对于 VS2005 中的 C#,有没有办法检查整数是否是 Enum 类型的一部分?

例如:

if number in CustomerType { ... }

哪里

enum CustomerType
{
    A = 0;
    B = 1;
    C = 2;
}

For C# in VS2005, is there way to check if an integer is part of a Enum type?

eg:

if number in CustomerType { ... }

where

enum CustomerType
{
    A = 0;
    B = 1;
    C = 2;
}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

少跟Wǒ拽 2024-09-14 14:22:24

Enum.IsDefined(类型 enumType,对象值) 你在找什么?

而不是你的 if 语句:

if (Enum.IsDefined(typeof(CustomerType), number))
{
    ...
}

Is Enum.IsDefined(Type enumType, Object value) what you're looking for?

Instead of your if-statement:

if (Enum.IsDefined(typeof(CustomerType), number))
{
    ...
}
随心而道 2024-09-14 14:22:24

尝试这样的操作:

var value = Enum.GetName(typeof(CustomerType), 3); // instead of 3 you can use any value

其中 CustomerType 是:

public enum CustomerType
{
    A = 0,
    B = 1,
    C = 2,
}

通过传递 3 个值将得到一个 null 值。如果您传递现有值(即 0、1 或 2),那么您将得到“A”、“B”或“C”。

有关更多信息,您可以检查 System.Enum 类的静态方法。

问候...

Try something like this:

var value = Enum.GetName(typeof(CustomerType), 3); // instead of 3 you can use any value

where CustomerType is:

public enum CustomerType
{
    A = 0,
    B = 1,
    C = 2,
}

By passing 3 value will have a null value. If you pass an existing value (i.e. 0, 1 or 2) then you'll get "A", "B" or "C".

For further info you can check the static methods of the System.Enum class.

Regards...

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文