如何获取枚举的基础值

2024-03-24

我声明了以下枚举:

 public enum TransactionTypeCode { Shipment = 'S', Receipt = 'R' }

如何从 TransactionTypeCode.Shipment 获取值“S”或从 TransactionTypeCode.Receipt 获取值“R”?

简单地执行 TransactionTypeCode.ToString() 会给出枚举名称“Shipment”或“Receipt”的字符串,因此它不会减少芥末。


您必须检查枚举的基础类型,然后转换为正确的类型:

public enum SuperTasks : int
    {
        Sleep = 5,
        Walk = 7,
        Run = 9
    }

    private void btnTestEnumWithReflection_Click(object sender, EventArgs e)
    {
        SuperTasks task = SuperTasks.Walk;
        Type underlyingType = Enum.GetUnderlyingType(task.GetType());
        object value = Convert.ChangeType(task, underlyingType); // x will be int
    }    
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何获取枚举的基础值 的相关文章

  • 如何保证对象只有一个线程

    我有以下代码 class Service public void start creates thread which creates window and goes to message loop void stop sends WM C
  • 如何在 C# / .NET 中创建内存泄漏[重复]

    这个问题在这里已经有答案了 可能的重复 托管代码中是否可能存在内存泄漏 特别是 C 3 0 https stackoverflow com questions 6436620 is it possible to have a memory
  • EF Core 通过完全替换断开集合导航属性的更新

    使用 EF Core 5 0 我有一个 SPA 页面 可以加载Group实体及其集合Employee来自 API 的实体 var groupToUpdate await context Groups Include g gt g Emplo
  • 根据 N 个值中最小的一个返回不同的结果

    不确定如何使标题更具描述性 所以我只是从一个例子开始 我使用下面的代码位 它从枚举中选择一个方向 具体取决于四个轴中哪一个与给定方向相比形成最小角度 static Direction VectorToDirection Vector2 di
  • 为什么这个没有特殊字符的正则表达式会匹配更长的字符串?

    我正在使用此方法来尝试查找匹配项 例如 Regex Match A2 TS OIL TS OIL RegexOptions IgnoreCase Success 我得到了真实的结果 我很困惑 我认为这应该返回 false 因为模式中没有特殊
  • 找不到 assimp-vc140-mt.dll ASSIMP

    我已经从以下位置下载了 Assimp 项目http assimp sourceforge net main downloads html http assimp sourceforge net main downloads html Ass
  • 如何获取 QTableView 的标题列表?

    我有一个QTableView我的对话框中的对象 我需要访问该表的水平标题并将它们放入QStringList object 尽管进行了大量搜索 但我在 Qt 文档中找不到如何获取此标头列表 编辑 我发现的最接近的地方是this https w
  • std::forward_as_tuple 将参数传递给 2 个构造函数

    我想传递多个参数以便在函数内构造两个对象 以同样的方式std pair
  • 检查 RoutedEvent 是否有任何处理程序

    我有一个自定义 Button 类 当单击它时 打开特定窗口 它总是执行相同的操作 我添加了一个可以在按钮的 XAML 中分配的 Click 事件 就像常规按钮一样 当它被单击时 我想执行 Click 事件处理程序 如果已分配 否则我想执行默
  • 将二进制数据从 C# 上传到 PHP

    我想将文件从 Windows C 应用程序上传到运行 PHP 的 Web 服务器 我知道 WebClient UploadFile 方法 但我希望能够分块上传文件 以便我可以监控进度并能够暂停 恢复 因此 我正在读取文件的一部分并使用 We
  • 给出 5 个参数,但在终端中只得到 3 个参数

    我想将一个文件传递给一个c 程序 如果我在 IDE 中执行此操作 test string string lt test txt return argc 5 但在终端上我刚刚得到argc 3 看来 这是因为 什么是 lt 意思是 我正在使用
  • 如何在标准 WPF ListView 中启用 UI 虚拟化

    我正在使用 NET 4 5 VS2012 并且我有一个 ListView 看起来像这样
  • Azure CloudTable 线程安全吗?

    我正在使用 Storage SDK 2 0 从不同线程 ASP NET 应用程序 写入 Azure 表存储 Is 云表 object 线程安全 我是否可以仅初始化 CloudStorageAccount CloudTableClient 和
  • 每个租户的唯一用户名和电子邮件

    我正在使用以下代码编写多租户应用程序ASP NET Core 2 1 我想覆盖默认的与用户创建相关的验证机制 目前我无法创建多个具有相同的用户UserName My ApplicationUser模型有一个名为TenantID 我想要实现的
  • .NET Core 中的跨平台文件名处理

    如何处理文件名System IO以跨平台方式运行类以使其在 Windows 和 Linux 上运行 例如 我编写的代码在 Windows 上完美运行 但它不会在 Ubuntu Linux 上创建文件 var tempFilename Dat
  • IEnumerable.Except 不起作用,那么我该怎么办?

    我有一个 linq to sql 数据库 非常简单 我们有 3 个表 项目和用户 有一个名为 User Projects 的连接表将它们连接在一起 我已经有了一个获得的工作方法IEnumberable
  • 跨多个域的 ASP.NET 会话

    是否有合适的 NET 解决方案来在多个域上提供持久服务器会话 即 如果该网站的用户在 www site1 com 下登录 他们也将在 www site2 com 下登录 安全是我们正在开发的程序的一个问题 Thanks 它是否需要在会话中
  • 每个数据库多个/单个 *.edmx 文件

    我有一个通过 ADO net 数据服务与数据库交互的项目 数据库很大 近 150 个具有依赖关系的表 该项目几年前开始 当时使用的是数据集 现在我们正在转向实体模型关系 由于我们添加了更多需要使用的表 该模型正在不断增长 这是管理这一切的正
  • 您是否将信息添加到每个 .hpp/.cpp 文件的顶部? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 创建新的 C 头文件 源文件时 您会在顶部添加哪些信息 例如 您是否添加日期 您的姓名 文件描述等 您是否使用结构化格式来存储此信息 e g F
  • 在简单注入器中解析具有自定义参数的类

    我正在使用以下命令创建 WPF MVVM 应用程序简易注射器作为 DI 容器 现在 当我尝试从简单注入器解析视图时遇到一些问题 因为我需要在构造时将参数传递到构造函数中 而不是在将视图注册到容器时 因此这不是适用的 简单注入器将值传递到构造

随机推荐

  • 禁用 UITableview 触摸时显示选择时出现问题?

    我使用 IB 并取消选中 触摸时显示选择 但它仍然在选定的单元格上显示蓝色突出显示 这是苹果的错误还是我出了问题 这可能是 IB 中的一个错误 正如您在文档中看到的那样 表视图没有任何用于在触摸时显示选择的属性 它是 tableview c
  • 在 python Altair 图中的热图中添加间距

    是否可以在使用创建的热图中添加一些间距mark rect 在 Altair python 图中 图 1 中的热图将转换为图 2 中的热图 您可以假设这是来自dataframe每列对应一个变量 我故意像这样画白条以避免任何硬编码的索引解决方案
  • java.lang.NoClassDefFoundError: org/w3c/dom/ElementTraversal

    我正在尝试使用页面工厂和页面对象模型运行一个Java项目 我想在Chrome IE和Firefox上运行它 但我无法在Firefox上运行它 浏览器无法打开 我得到了这个错误 java lang NoClassDefFoundError o
  • 如何减小 NTFS 中文件夹索引文件的大​​小?

    我有一个 NTFS 文件夹 其中包含数万个文件 我已删除该文件夹中的所有文件 保存 1 我运行 contig exe 对该文件夹进行碎片整理 因此现在它仅包含 1 个片段 然而 该文件夹的大小仍然是 8MB 这意味着该指数存在很大差距 这是
  • 手动创建类以映射到 XML 请求响应

    我被指派实现一个使用 XML 请求 响应的 API 接口 API 提供商不为 XML 调用提供任何 xsd 我使用 xsd exe 生成了 C 类 xml gt xsd gt cs 但是 我发现生成的类并不令人满意 因为调用包含大量列表 而
  • 栈和堆的内存分配

    这似乎是一个非常基本的问题 但它一直在我的脑海中 当我们分配一个局部变量时 它会进入堆栈 类似地 动态分配会导致变量位于堆上 现在 我的问题是 这个变量实际上位于堆栈还是堆上 还是我们只是堆栈和堆中的引用 例如 假设我声明一个变量int i
  • 如何从 hive cli 运行 hive 脚本

    我现在有 hive 脚本 custsales hql 我想从 hive cli 运行它 hive pract5 gt run user training hdfs location custsales hql 但它不执行 请指导 我知道我们
  • 何时在 AngularJS 应用程序中使用自定义指令、ui-view 和 ng-include?

    我正在构建一个大型 复杂的 AngularJS 应用程序 想想 ERP 系统 我很难决定何时适合使用ui view ng include or a custom directive templateURL 我将举几个具体的例子 给大家一些参
  • WebAPI 和 ODataController 返回 406 不可接受

    在将 OData 添加到我的项目之前 我的路线设置如下 config Routes MapHttpRoute name ApiById routeTemplate api controller id defaults new id Rout
  • 将 Python 字典和列表压缩在一起

    是否可以将 python 字典和列表压缩在一起 例如 dict A 1 B 2 C 3 num list 1 2 3 zipped zip dict num list 然后我想做这样的事情 for key value num list en
  • C# 中调用另一个 Button 的代码

    我需要知道是否可以从另一个按钮调用单击按钮 private void myAction Click object sender EventArgs e int x private void Go Click object sender Ev
  • web.xml 中的白名单安全约束

    我正在为我的 Struts2 应用程序使用 Tomcat 这web xml具有某些条目 如下所示
  • 与元素类型“beans”关联的属性“xsi:schemaLocation”的前缀“xsi”未绑定

    为什么我会出现这个错误 致命错误 与元素类型 beans 关联的属性 xsi schemaLocation 的前缀 xsi 未绑定 在我的 XML 文件的标题处
  • 在国际范围内将多行 csv 文件导入 Excel

    我们想要分发给客户一个 csv 文件 它包含多行条目 即带有换行符的条目 根据客户的语言设置 文件可能会也可能不会正确导入到 Excel 中 通常 我们建议使用导入文件 但多行条目似乎存在一些错误 因此它们会 分解 成单独的行 奇怪的是 直
  • WPF 中的条件列表项模板或数据模板

    这可能是一个显而易见的问题 但我认为很可能有多种方法来实现它 所以这不仅对我有用 希望对其他人也有用 本质上 我正在寻找实现列表视图的最佳方法 该视图可以接受不同类型的对象 然后使用该对象的适当项目 数据模板来呈现它们 例如 我们有一个标准
  • EF6 - 无法模拟 ObjectResult 的返回值以进行单元测试

    我在尝试进行单元测试的方法中有与此类似的代码 return context usp get Some Data someStringParam FirstOrDefault 存储过程调用返回类型 ObjectResult
  • 在 Mono 或 Windows 上托管 ServiceStack、MVC3 或 MVC4,以及 Mono 的状态是什么

    我正在尝试决定为基于网络的新后台系统使用什么堆栈 我们使用 C 进行开发 并将使用 ServiceStack 和 或 ASP NET MVC 我们的客户更喜欢在 Linux 服务器上托管 因此排除了 MVC4 因为 Mono 不支持 MVC
  • 在 Angular 2 项目中运行 ngserve 命令时出错

    我最近使用 angular cli 创建了一个项目 但无法使用 ngserve 运行它 运行 ngserve 命令时会抛出此错误 无法读取未定义的属性 AssetUrl 类型错误 无法读取未定义的属性 AssetUrl 在对象 Users
  • 将数组转换为 IEnumerable

    令我惊讶的是 我得到以下声明 public static IEnumerable
  • 如何获取枚举的基础值

    我声明了以下枚举 public enum TransactionTypeCode Shipment S Receipt R 如何从 TransactionTypeCode Shipment 获取值 S 或从 TransactionTypeC