gpt4 book ai didi

c# - 我如何要求枚举作为强类型参数?

转载 作者:行者123 更新时间:2023-11-30 21:52:34 25 4
gpt4 key购买 nike

我可能会完全错误地处理这件事,所以我愿意接受任何和所有的建议。我想要做的是在这需要 StatusType 参数:

Response(StatusType.Submit, message);

限制为一组特定的类型,这些类型将返回一个常量字符串值。到目前为止,我想出了这个解决方案:

public class Response
{
private StatusType _status;

Response(StatusType status, string message)
{
_status = status;
}

public string Status
{
get
{
return Enum.GetName(typeof(StatusType), _status);
}
}
}

public enum StatusType
{
Fail,
Success,
Response,
Confirm
}

但我现在意识到枚举参数是弱类型的,将允许我输入一个字符串值。谁能帮我?我感觉枚举不是我的解决方案,但我不确定是否有其他方法。

最佳答案

根据评论,您在 VB 项目中使用此类时遇到错误。

Option Strict 关闭时,VB 将尝试“帮助”在“兼容”类型之间转换对象。这通常会隐藏错误并导致一些非常难以追踪的错误。我建议在 Visual Basic 中开发时始终打开“Option Strict”;它将帮助您编写更好的代码。

您可以从项目属性中的Compile 选项卡为整个项目启用Option Strict(推荐方式),或者为单个文件添加Option Strict On任何类定义之外的文件顶部。

关于c# - 我如何要求枚举作为强类型参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34664579/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com