通用类型转换方法(.Net)

2023-12-28

我正在尝试创建一个通用方法来投射对象,但似乎无法破解这个栗子。 (今天是周五下午 3 点,这是漫长的一周)

好的,所以我有这样的场景:

// We have a value (which .net sets as a double by default)
object obj = 1.0;

// We have the target type as a string, which could be anything:
// say string sometType = "System.Decimal"
Type type = Type.GetType(someType);

// I need a generic way of casting this
object castedObj = (xxx) obj;

如何在不创建无数 if-else 语句的情况下通用地转换该对象?


您可以使用转换.更改类型 http://msdn.microsoft.com/en-us/library/dtb69x08.aspx方法,如果您使用的类型实现I敞篷车 http://msdn.microsoft.com/en-us/library/system.iconvertible.aspx(所有原始类型都是如此)。

    Convert.ChangeType(value, targetType);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

通用类型转换方法(.Net) 的相关文章

随机推荐

  • 如何在 Flask 中“jsonify”列表? [复制]

    这个问题在这里已经有答案了 现在Flaskjsonify 列表时会引发错误 我知道可能存在安全原因https github com mitsuhiko flask issues 170 https github com mitsuhiko
  • 如何使用 imagemagick 将两个文件夹中的图像并排合并到一起?

    我有两个文件夹 A and B 以及具有相应名称的图像文件 例如 每个都包含标记为01 png 02 png 03 png etc 我怎么能够merge相应的文件 这样我就有了第三个folder C其中包含所有合并的照片 以便两张原件并排放
  • Github API 响应“内容无效 Base64”

    使用 API 将某个非常简单的内容发布到 github 时 我收到 内容不是有效的 Base64 错误 内容是 unit li class s clearfix li 我正在使用 Base64 urlsafe encode64 对内容进行编
  • 算法优化-多点之间的最短路径

    问题 我有大量的点集合 这些点中的每一个都有一个列表 其中包含对其他点的引用 以及它们之间的距离已经计算并存储 我需要确定从起点开始并经过特定数量的点到达任何目的地的最短路线 例如 我正在度假 并且住在某个特定的城市 我正在进行一次单程旅行
  • 是否可以从 aspnet core api 中的中间件向控制器发送值?

    我想知道是否可以将值从中间件发送到controllerAPI 例如 我想捕获一个特定的标头并将其发送到控制器 像这样的东西 public class UserTokenValidatorsMiddleware private readonl
  • JSP简单密码加密解密

    我需要加密密码以插入数据库 此外 当我需要该密码时 我需要解密该值 执行此操作的简单方法是什么 注意 此操作不必非常安全 请不要实施您当前的计划 而应该使用信息摘要 http docs oracle com javase 7 docs ap
  • 表格内的绝对定位

    我需要在 td 内使用绝对定位来定位某些内容 为了解决 td 在将其设置为相对时未定义的事实 我在 td 内使用设置为相对的 div 然后在该 div 内将内部 div 设置为绝对 当我有内容填满 td 时 这一切都非常有效 当我将 td
  • 使用 Spring AMQP 接收和发送 Java 对象

    我想实现 Spring AMQP 示例 用于使用侦听器发送和接收 Java 对象 我试过这个 发送Java对象 ConnectionFactory connectionFactory new CachingConnectionFactory
  • 从 Redis 列表中删除特定索引处的元素

    是否可以删除 Redis 列表中特定索引处的元素 并没有真正找到我想要的东西 有 Trim 允许您选择一组特定的元素 LREM 允许您按值删除列表中的项目 但我没有该值 我发现了一个 hack 您可以使用 LSET 将元素的值更改为 UID
  • iPhone Xs 和 Xs Max 在 iTunes 上没有显示 UDID?

    对于运行 iOS 12 的 iPhone Xs 和 Xs Max UDID 不会显示在最新版本的 iTunes 12 9 中 有谁知道如何从新版iTunes获取UDID吗 到目前为止 我成功地从 Xcode 获得了 24 位代码 我使用的是
  • 级联保留父级后,子级的 id 不存在

    我有一个User 家长 和一个Home 子 实体遵循单向一对多关系相关 我的问题是 当添加新的Home to a User 新创建并保留的Home没有id 这是正常的吗 如果我想要 id 我需要手动保留孩子吗 这些是我的实体 Entity
  • Go http 客户端超时与上下文超时

    http Client 中设置的超时和请求上下文中设置的超时有什么区别 我见过两种在 http 客户端中设置超时的方法 First ctx cancel context WithTimeout context Background 2 ti
  • 如何“随机”选择对特定数字有指定偏差的数字

    如何生成对一个数字具有指定偏差的随机数 例如 我将如何在 1 和 2 这两个数字之间进行选择 并且 90 的概率偏向 1 我能想到的最好的办法是 import random print random choice 1 1 1 1 1 1 1
  • jQuery - 检查子 div 是否可见

    我试图查看 li 的子 div 是否可见 如果可见 则向 li 应用一个类 这就是我得到的 但它不起作用 if jQuery menu li children div css display none jQuery li this addC
  • 自动化无聊的事情 - 硬币翻转条纹

    我知道现在有很多关于它的问题 即使是同一个问题 但我想我尝试了一些不同的方法 任务是收集 10 000 个样本 每个样本 100 次翻转 然后计算所有样本中出现 6 次正面或反面连续出现的概率 据我所知 但在之前的问题中 编码问题被描述得有
  • Genymotion Android 模拟器 - adb 访问?

    我下载了适用于 Oracle VirtualBox 的 Genymotion Android 模拟器 http www genymotion com http www genymotion com 在我的 Windows 7 PC 上 使用
  • 如何从 web.config 读取系统值并在 ASP.NET MVC C# 方法中使用

    我正在开发一个 ASP NET MVC3 Web 应用程序 不是我编写的 其最大上传大小为 100MB 现在 此 Web 应用程序已安装在客户的服务器计算机上 因此如果可以为每个客户配置此值最大上传大小 那就太好了 如果需要 他们可以编辑
  • 如何使用 AngularJS 在 ASP MVC 中重定向页面?

    我经历了启动新的 ASP NET MVC 无用户身份验证过程的过程 并且已经开始将 AngularJS 与 C 代码集成 My ViewStart cshtml uses Layout cshtml to RenderBody 对于在 视图
  • SQL Server 中有用的系统存储过程

    我最近发现我可以使用sp help获得表定义并从那时起就一直迷恋它 在我发现之前 我必须在 SQL Management studio 中打开对象资源管理器 手动搜索表名称 右键单击表并选择设计 那真是费了很大的力气 你们都使用了哪些其他无
  • 通用类型转换方法(.Net)

    我正在尝试创建一个通用方法来投射对象 但似乎无法破解这个栗子 今天是周五下午 3 点 这是漫长的一周 好的 所以我有这样的场景 We have a value which net sets as a double by default ob