可空类型之间的转换

2023-11-22

.NET 4.0 中是否有一个转换器支持可空类型之间的转换以缩短指令,例如:

bool? nullableBool = GetSomething();
byte? nbyte = nullableBool.HasValue ? (byte?)Convert.ToByte(nullableBool.Value) : null;

我会写一个扩展方法:

public static class Extensions
{
    public static TDest? ConvertTo<TSource, TDest>(this TSource? source) 
        where TDest: struct 
        where TSource: struct
    {
        if (source == null)
        {
            return null;
        }
        return (TDest)Convert.ChangeType(source.Value, typeof(TDest));
    }
}

进而:

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

可空类型之间的转换 的相关文章

  • 在路由mvc 4中添加公司名称

    我一直在尝试为 Facebook 等用户提供在 URL 中添加公司名称的选项 http localhost 50753 MyCompany Login 我尝试过不同的网址 但没有成功 routes MapRoute name Default
  • 删除是如何工作的? [复制]

    这个问题在这里已经有答案了 可能的重复 C 编程 free 如何知道要释放多少 https stackoverflow com questions 1518711 c programming how does free know how m
  • 检测wlan是否关闭

    任何人都可以给我一个提示 如何在 Windows Phone 上以编程方式检测 C 8 1 应用程序 不是 8 0 是否启用 禁用 WLAN 我不想更改这些设置 只是需要知道 该解决方案是一个 Windows 8 1 通用应用程序 Wind
  • 将完整模板参数值映射到原始类型

    我想将数字映射到类型 在这个例子中 我将创建一个函数 将 sizeof 结果映射到有符号的原始类型 我想知道是否有更好的方法来完成我在现代 C 中所做的事情 即采用模板化值并将其转换为类型 现在 这可以将大小转换为已知类型 但我似乎无法在标
  • 解析 JWT 令牌以仅获取有效负载内容,无需 C# 或 Blazor 中的外部库

    我正在使用 Blazor 编写可以访问 JWT 的客户端应用程序 我想知道一种简单的方法来读取令牌有效负载内容而不添加额外的依赖项 因为我不需要其他信息 也不需要验证令牌 我认为解析有效负载内容应该足够简单 只需将其写入方法即可 JwtTo
  • std::call_once 可重入且线程安全吗?

    std call once http en cppreference com w cpp thread call once是线程安全的 但它也是可重入的吗 我使用 VS2012 调试和发布 进行的测试表明 调用std call once从单
  • 如何使用 SOAP 且不使用 WSE 在 .NET 中签署 Amazon Web 服务请求

    亚马逊产品广告 API 以前称为 Amazon Associates Web Service 或 Amazon AWS 实施了一项新规则 即自 2009 年 8 月 15 日起 向其发送的所有 Web 服务请求都必须经过签名 他们在其网站上
  • 检测到堆栈崩溃

    我正在执行我的 a out 文件 执行后 程序运行一段时间 然后退出并显示消息 stack smashing detected a out terminated Backtrace lib tls i686 cmov libc so 6 f
  • 计算另一个表达式中的 C# 表达式

    我想在另一个表达式中使用一个表达式 Expression
  • 为什么'enable_if'不能用于禁用这里声明

    include
  • 在 omp 并行 for 循环中使用 unique_ptr 会导致 SEG.FAULT

    采取以下代码 include
  • MFC:如何设置CEdit框的焦点?

    我正在开发我的第一个简单的 MFC 项目 但我正在努力解决一个问题 想要设置所有的焦点CEdit其中一个对话框中的框 我的想法是 当打开对话框时 焦点位于第一个编辑框上 然后使用 选项卡 在它们之间交换 我看到了方法SetFocus 但我无
  • 如何对 NServiceBus.Configure.WithWeb() 进行单元测试?

    我正在构建一个 WCF 服务 该服务接收外部 IP 上的请求并将其转换为通过 NServiceBus 发送的消息 我的单元测试之一调用Global Application Start 它执行应用程序的配置 然后尝试将 Web 服务解析为 验
  • C#6 中的长字符串插值行

    我发现 虽然字符串插值在应用于现有代码库的字符串 Format 调用时非常好 但考虑到通常首选的列限制 字符串对于单行来说很快就会变得太长 特别是当被插值的表达式很复杂时 使用格式字符串 您将获得一个可以拆分为多行的变量列表 var str
  • 搜索实体的所有字段

    我正在尝试在客户数据库上实现 多功能框 类型的搜索 其中单个查询应尝试匹配客户的任何属性 这是一些示例数据来说明我想要实现的目标 FirstName LastName PhoneNumber ZipCode Mary Jane 12345
  • 使用具有抗锯齿功能的 C# 更改抗锯齿图像的背景颜色

    我有一个图像需要更改背景颜色 例如 将下面示例图像的背景更改为蓝色 然而 图像是抗锯齿的 所以我不能简单地用不同的颜色替换背景颜色 我尝试过的一种方法是创建第二个图像 仅作为背景 并更改其颜色并将两个图像合并为一个图像 但是这不起作用 因为
  • 如何使用 NPOI 按地址(A1、A2)获取 Excel 单元格值

    我有一个 Excel 单元格地址 例如 A1 A2 如何使用 C 中的 NPOI 框架以编程方式访问此单元格 我找到的一些 Java POI 示例代码 CellReference cr new CellReference A1 row my
  • 如何从 Rx Subscribe 回调异步函数?

    我想回调 Rx 订阅中的异步函数 例如 像那样 public class Consumer private readonly Service service new Service public ReplaySubject
  • 逆向工程 ASP.NET Web 应用程序

    我有一个 ASP NET Web 应用程序 我没有源代码 该 bin 包含 10 个程序集和一个 compiled 文件 我在 App Code dll 上使用 Reflector 它向我显示了类和命名空间之类的东西 但它太混乱了 有没有什
  • 为什么以下 C 程序会出现总线错误?

    我认为这是第一个失败的 strtok 调用 好久没写C了 有点不知所措 非常感谢 include

随机推荐

  • LINQ 查询返回第一个结果的多个副本

    我在数据库中定义了一个视图 archiveContentPreviews 它将多个表连接在一起 并且在 Linq 中它有一个实体键 ArchiveID 我想使用以下简单查询来查询此视图 var x from fields in entiti
  • 纵向数据

    I ve been working with the R Orthodont dataset in the nlme package Just use install packages nlme library nlme head Orth
  • 比较两个 T-SQL 表的差异

    我有同一个数据库的两个实例 第一个数据库代表今天的数据 第二个数据库代表 6 个月前的数据 我需要找到特定表中条目子集的差异 对于两个表中都有 id 的条目 我想找到一种方法来仅查看不相同的行 有任何想法吗 Thanks SELECT t1
  • 在 .NET 控制台应用程序中,是否可以让一行文本始终在控制台中保持可见?

    我正在考虑向控制台应用程序添加一个简单的带宽监视器 我想知道是否可以使控制台窗口中的一行始终可见 我可以手动设置一些东西 将新的控制台输出传递到一个方法中 该方法将获取控制台的内容 清除控制台 在第一行添加带宽数据 然后将以前的每行信息重写
  • 用Java处理大数据结构

    我正在开发一个需要处理非常大的矩阵的 Java 应用程序 例如两个1000万 1000万的矩阵相乘 当然 Java 堆甚至没有足够的空间来存储这些矩阵之一 我应该怎么办 我应该使用数据库来存储我的矩阵并将每个需要的部分带入内存并将其逐个相乘
  • Phoenix 将 404 和 500 渲染为 JSON

    我开始了一个 Phoenix 项目 但没有使用 no html选项 现在我正在努力确保404 and 500错误呈现为 JSON 该项目在凤凰城启动1 1 0 并已更新为1 1 4 我已经修改了config config exs file
  • 为 OSGi 包寻找良好的开发环境 [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 目前不接受答案 我目前正在研究 OSGi 包的开发环境领域 我的目标是找到一种方法来轻松开发 测试和调试我将要编码的捆绑包 此外 我还有一些 文化 要求 我希望能够
  • 玩2.3隐式json转换导致空指针异常

    我正在尝试将 json 解析到我的案例类中DealFormMap case class DealFormMap limit Option Int filter Option DealFormFilterMap case class Deal
  • 在 apache localhost 服务器上使用 .htaccess 文件

    好吧 我已经启动了 Apache localhost 服务器并使用 PHP 和 MySql 运行 现在我希望能够使用 htaccess文件以及使用RewriteRule 但我不知道该把它放在哪里 我有这些目录 C dev progsApac
  • 如何在Python中安装VLC模块

    我尝试使用 PIP 安装 VLC 但出现以下错误 pip install VLC Downloading unpacking vlc Cannot fetch index base URL https pypi python org sim
  • Python:如何保存 os.system 的输出[重复]

    这个问题在这里已经有答案了 在 Python 中 如果我使用 wget 使用 os system wget 下载文件 它会在屏幕上显示如下 Resolving Connecting to HTTP request sent awaiting
  • 流畅断言:比较两个数字集合的近似值

    我有两个双精度数组 有没有办法使用 FluentAssertions 使用 BeApproximately 技术逐个元素地比较数组 一个范围值足以满足整个数组的需要 Example double source 10 01 8 01 6 01
  • 进程组必须有一个正在运行的领导进程吗?

    在类 Unix 操作系统中 如果一个进程 pid和它的pgid相等 则该进程是进程组的领导者 但是 如果进程领导者已经退出 并且同组中的其他进程仍在运行 那么谁是继任的领导者进程 没有继任领导者 一旦流程组领导者退出 该组就失去了领导权 没
  • 更新 pyplot.scatter 的位置和颜色

    我已经为此苦苦挣扎了一段时间 但无法让它发挥作用 我正在分块读取文件并从中绘制散点图数据 并且我想通过更新中每个块的散点图来 动画化 它for循环 并使其适应实时数据流 所以像这个丑陋的例子适用于单个图 x 1 2 3 4 y 4 3 2
  • Yocto:将内核模块配方添加到映像,但它不会在启动时加载

    出于测试目的 我使用 yocto 提供的示例配方来演示如何构建内核模块 SUMMARY Example of how to build an external Linux kernel module LICENSE GPLv2 LIC FI
  • 如何向 UIActivityViewController 对象添加不同的文本

    我实现了一个 UIActivityViewController 用于共享一些信息 在这种情况下 我有一个问题 是否可以在 facebook 共享 twitter 共享 或邮件共享之间制作不同的文本 设置的文本与其他文本不同 一个好的 UIA
  • 以编程方式生成 VSTS 的个人访问令牌

    我是否可以连接到 VSTS REST 端点 以便让用户自行提供另一个 PAT 最好是在当前到期前几天 我有一个时间表应用程序 现在正在连接到 VSTS 以获取工作项信息并更新所述工作项 但是 在某个时候 90 天 180 天或一年后 PAT
  • “git fetch”后 FETCH_HEAD 引用未正确更新

    我有一个从远程存储库中提取的本地存储库 跑步git pull也git fetch git merge FETCH HEAD用于执行完全相同的操作 正如预期的那样的描述git pull 描述 将远程存储库中的更改合并到当前分支中 在默认模式下
  • 如何从父文件夹或同级文件夹模块访问模块?

    我正在尝试从以下位置访问模块parser rs and another rs in the solve rs 如何包含这些模块并使用 use语句 如果不可能 代码结构应该是什么 这是应用程序文件夹树 app src main rs anot
  • 可空类型之间的转换

    NET 4 0 中是否有一个转换器支持可空类型之间的转换以缩短指令 例如 bool nullableBool GetSomething byte nbyte nullableBool HasValue byte Convert ToByte