使用 C# Nullable 引用类型将外部 dll 中的所有类型视为可为 null

2024-01-05

我在项目中使用 C# Nullable 引用类型,并且引用了一些不支持 Nullable 引用类型的其他 dll。

我可以以某种方式告诉编译器外部 dll 中的所有属性都可以为空吗?默认情况下,编译器将所有内容显示为非空。


未注释代码中的值被视为“遗忘”,这意味着它们的可为空性未知。对此类值的分析与 NRT 功能存在之前的方式相同。

您不需要为使用该库的代码禁用可为空上下文。您只是无法深入了解空值可能流入代码的位置以及空值可能会错误地传递到外部代码的位置。

理想情况下,您将获得程序集的带注释版本。如果它的表面积足够小,您可以提供自己的带注释的垫片。

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

使用 C# Nullable 引用类型将外部 dll 中的所有类型视为可为 null 的相关文章

  • 使用具有现有访问令牌的 Google API .NET 客户端

    用例如下 移动应用程序正在通过 Google 对用户进行身份验证 并且在某些时候 我们需要将用户的视频发布到他的 YouTube 帐户 出于实际原因 实际发布应该由后端完成 已经存储在那里的大文件 由于用户已经通过应用程序的身份验证 因此应
  • 为什么我不能用 `= delete;` 声明纯虚函数?

    Intro 纯虚函数使用通用语法声明 virtual f 0 然而 自 c 11 以来 有一种方法可以显式地传达non existence 特殊 成员函数的 Mystruct delete eg default constructor Q
  • 如何在 Android NDK 中创建新的 NativeWindow 而无需 Android 操作系统源代码?

    我想编译一个 Android OpenGL 控制台应用程序 您可以直接从控制台启动 Android x86 运行 或者从 Android x86 GUI 内的 Android 终端应用程序运行 这个帖子 如何在 Android NDK 中创
  • C# 中的接口继承

    我试图解决我在编写应用程序时遇到的相当大的 对我来说 问题 请看这个 为了简单起见 我将尝试缩短代码 我有一个名为的根接口IRepository
  • 对齐 GridView 中的行值

    我需要在 asp net 3 5 中右对齐 gridview 列中的值 我怎样才能做到这一点
  • 从多个类访问串行端口

    我正在尝试使用串行端口在 arduino 和 C 程序之间进行通信 我对 C 编程有点陌生 该程序有多种用户控制形式 每一个都需要访问串口来发送数据 我需要做的就是从每个类的主窗体中写入串行端口 我了解如何设置和写入串行端口 这是我的 Fo
  • 暂停下载线程

    我正在用 C 编写一个非常简单的批量下载程序 该程序读取要下载的 URL 的 txt 文件 我已经设置了一个全局线程和委托来更新 GUI 按下 开始 按钮即可创建并启动该线程 我想要做的是有一个 暂停 按钮 使我能够暂停下载 直到点击 恢复
  • 访问者和模板化虚拟方法

    在一个典型的实现中Visitor模式 该类必须考虑基类的所有变体 后代 在许多情况下 访问者中的相同方法内容应用于不同的方法 在这种情况下 模板化的虚拟方法是理想的选择 但目前这是不允许的 那么 模板化方法可以用来解析父类的虚方法吗 鉴于
  • ASP MVC:服务应该返回 IQueryable 的吗?

    你怎么认为 你的 DAO 应该返回一个 IQueryable 以便在你的控制器中使用它吗 不 您的控制器根本不应该处理任何复杂的逻辑 保持苗条身材 模型 而不是 DAO 应该将控制器返回给视图所需的所有内容 我认为在控制器类中看到查询 甚至
  • 当前的 c++ 工作草案与当前标准有何不同

    通过搜索该标准的 PDF 版本 我最终找到了这个链接C 标准措辞草案 http www open std org jtc1 sc22 wg21 docs papers 2012 n3376 pdf从 2011 年开始 我意识到我可以购买最终
  • C 语言中 =+(等于加)是什么意思?

    我碰到 与标准相反 今天在一些 C 代码中 我不太确定这里发生了什么 我在文档中也找不到它 In ancientC 版本 相当于 它的残余物与最早的恐龙骨头一起被发现 例如 B 引入了广义赋值运算符 使用x y to add y to x
  • 如何将“外部模板”与由同一类中的模板化成员使用的嵌套类一起使用?

    首先 一些背景信息 我尝试以 Herb Sutter 在他的解决方案中介绍的方式使用 Pimpl 习语 得到了 101 http herbsutter com gotw 101 这在头文件中看起来像这样 include pimpl h h
  • 将数据打印到文件

    我已经超载了 lt lt 运算符 使其写入文件并写入控制台 我已经为同一个函数创建了 8 个线程 并且我想输出 hello hi 如果我在无限循环中运行这个线程例程 文件中的o p是 hello hi hello hi hello hi e
  • 在 C 中使用 GNU automake 中的解析器

    我是 GNU autotools 的新手 在我的项目中使用了 lex 和 yacc 解析器 将它们作为 makefile am 中的源代码会产生以下错误 配置 in AC CHECK PROGS YACC bison yacc none i
  • g++ 对于看似不相关的变量“警告:迭代...调用未定义的行为”

    考虑以下代码strange cpp include
  • strcmp 给出分段错误[重复]

    这个问题在这里已经有答案了 这是我的代码给出分段错误 include
  • 剪贴板在 .NET 3.5 和 4 中的行为有所不同,但为什么呢?

    我们最近将一个非常大的项目从 NET Framework 3 5 升级到 4 最初一切似乎都工作正常 但现在复制粘贴操作开始出现错误 我已经成功制作了一个小型的可复制应用程序 它显示了 NET 3 5 和 4 中的不同行为 我还找到了一种解
  • 转到定义:“无法导航到插入符号下的符号。”

    这个问题的答案是社区努力 help privileges edit community wiki 编辑现有答案以改进这篇文章 目前不接受新的答案或互动 我今天突然开始在我的项目中遇到一个问题 单击 转到定义 会出现一个奇怪的错误 无法导航到
  • 带重定向标准流的 C# + telnet 进程立即退出

    我正在尝试用 C 做一个 脚本化 telnet 项目 有点类似于Tcl期望 http expect nist gov 我需要为其启动 telnet 进程并重定向 和处理 其 stdin stdout 流 问题是 生成的 telnet 进程在
  • 使用 Crypto++ 获取 ECDSA 签名

    我必须使用 Crypto 在变量中获取 ECDSA 签名 我在启动 SignMessage 后尝试获取它 但签名为空 我怎样才能得到它 你看过 Crypto wiki 吗 上面有很多东西椭圆曲线数字签名算法 http www cryptop

随机推荐

  • Spring Boot 4 不渲染 JSP 抛出 404

    我有以下项目结构 src main java com test Application java controllers MyController java webapp WEB INF jsp main jsp 我想做类似的事情this
  • JDBC Spring 中的错误 Sql 语法异常

    我是得到 org springframework jdbc BadSqlGrammarException 准备语句回调 错误的 SQL 语法 select cid 来自临床医生的临床医生代码 密码 名字 姓氏 临床医生代码 嵌套异常是 co
  • 如何使用 CloudFormation 为特定 Lambda 设置 Lambda 警报?

    这是CloudFormation的结构Alarm from AWS文档 https docs aws amazon com AWSCloudFormation latest UserGuide aws properties cw alarm
  • 如何使用 Google Guava 中的 Throwables.propagateIfInstanceOf()?

    javadoc 示例 http guava libraries googlecode com svn tags release08 javadoc com google common base Throwables html propaga
  • 如何成为一名优秀的Python程序员? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • macOS:向 Cocoa 绑定公开 Swift 属性的正确方法

    我正在 Mac 上开发一个现有的 Swift Objective C 项目 并在代码中创建一些 UI 我根据我管理的 NSTableView 中的选择启用一个按钮without使用 NSArrayController 出于原因 我有一处房产
  • 为什么 as.data.frame 忽略 col.names = vector

    我顽固地尝试在一行中创建一个具有命名行和列的数据框 我意识到我可以通过使用 colnames forecast 轻松地做到这一点 但想简化一下 如果只是为了证明我可以做到这一点 以下不起作用 没有错误 但未设置列名 forecast lt
  • 如何在 iPad 中调整网页大小/重新缩放

    我有一个网站 其移动版本使用 jquery mobile 当我将其从纵向更改为横向时 它会正确放大 但当我翻转到纵向时 它会保持相同的缩放级别 并且比视图更宽 这会破坏用户体验 我使用常规 从我所做的所有搜索来看 这应该可以 不幸的是它不适
  • 处理“超规范化”数据

    我的雇主是一家小型办公用品公司 正在更换供应商 我正在浏览他们的电子内容 以得出一个强大的数据库模式 我们之前的模式几乎是在没有任何思考的情况下拼凑在一起的 这几乎导致了一个令人难以忍受的数据模型 其中包含损坏的 不一致的信息 新供应商的数
  • Laravel 控制器/模型/视图的命名约定是什么?

    我记得听说你应该以特殊的方式命名你的控制器 模型和视图 可以是单数 也可以是复数 我不记得要命名哪些内容 而且我在文档中找不到任何有关它的信息 我猜是这样的 控制器是复数 视图是复数的 模型是单一的 我走在正确的轨道上吗 我知道这只是一个惯
  • 移动时切比雪夫距离 x 坐标错误

    所以我正在复制移相器切比雪夫距离示例 并在解决方案之后here https stackoverflow com questions 75478712 this gamestate variable not recognized phaser
  • 如何在 Django REST Framework 的单元测试期间登录用户?

    这是我的 DRF 视图 api view GET permission classes IsAuthenticated def check user request user request user use user object her
  • mysql中三个表之间的内连接

    我有 3 个表叫做 公司 联系方式 活动 联系人具有公司的外键 公司拥有活动的外键 它们都有一个 名称 列 我需要一个连接表 其中包含联系人姓名 公司名称和活动名称 contact id name company id companies
  • 根据 Woocommerce 中选择的运输方式显示隐藏付款方式

    当我在灵活的运输插件表单 wpdesk 中选择指定的 运输方式 时 我想隐藏某些付款方式并启用另一种付款方式 我已经尝试过该代码 add filter woocommerce available payment gateways gatew
  • Sine CAShapeLayer 作为 CALayer 的掩模

    我正在尝试实现下一个奇怪的事情 我有一些点 我想将它们与正弦波联系起来 Next 方法返回用于绘制绘图的点数组 NSArray plotPointsBetweenPoint CGPoint pointA andPoint CGPoint p
  • 我有多个通过 StackView 推送的 qml 文件。如何将它们连接到 C++

    我的项目包含 6 个 qml 文件 main qml 打开一个新的 ApplicationWindow 并声明工具栏 它还使用 initalItem homescreen qml 初始化 StackView 在主屏幕上 我有不同的按钮 可以
  • 在元构建级别运行 sbt 命令

    sbt 允许我们在根项目级别运行 sbt 命令 如何在元构建级别运行命令 定义在root project project dir 我的用例是我的一些 sbt 插件具有相同依赖项的不同版本 并且较旧的依赖项被逐出 我想使用 sbt depen
  • 如何更改 Android Studio 中的语法突出显示颜色?

    在其他文本编辑器中 可以更改突出显示颜色 例如comment语言的PHP 如何在 Android Studio 中更改单独的突出显示颜色 前往设置 Ctrl Alt S 然后转到IDE 设置 gt 编辑器 gt 颜色和字体 从这里您可以选择
  • ManagedBean 参数不被接受并且 Bean 似乎不在范围内

    这使用来自相同的代码primefaces 树控件 http www primefaces org showcase labs ui treeEvents jsf ManagedBean name theName eager true 第一个
  • 使用 C# Nullable 引用类型将外部 dll 中的所有类型视为可为 null

    我在项目中使用 C Nullable 引用类型 并且引用了一些不支持 Nullable 引用类型的其他 dll 我可以以某种方式告诉编译器外部 dll 中的所有属性都可以为空吗 默认情况下 编译器将所有内容显示为非空 未注释代码中的值被视为