c# - 在 Unity 中自定义 .csproj 启用可为空的引用类型
问题描述
Unity3D 的 2020.2 版本现在支持 C# 8 和可为空的引用类型。选择启用此语言功能的默认方式是放入<Nullable>enable</Nullable>
您的.csproj
文件中,但 Unity.csproj
每次编译时都会重新生成并删除该行。
有没有办法将自定义内容插入到我.csproj
的#nullable enable
.
解决方案
我做了@Fadeway 建议的配置,它适用于在 Unity 本身内构建(2020.3.15f2)。但是在使用外部编辑器时它不起作用(在我的例子中是 VSCode)。
Directory.Build.props
但是,通过添加一个与您.sln
的项目文件一起命名的新文件,其内容如下:
<Project>
<PropertyGroup>
<Nullable>enable</Nullable>
</PropertyGroup>
</Project>
.csproj
它在编辑器中按预期工作,并且在从 Unity 中重新生成文件时不会被覆盖
推荐阅读
- ios - 取消异步/等待网络请求
- python - Numpy-如何创建具有行和列索引的布尔数组
- sparql - Wikidata SPARQL 查询超时:按人口排序的国家标志
- node.js - 即使添加了偏移量,Telegram api getUpdats 也不会忽略旧消息
- php - 如何从 html 到 php 获取它的值?
- python - 如何在 python/pycharm 中获取 Arctan?
- apache-spark - 为什么合并会导致处理的节点太少?
- haskell - 如何使用 Test.Framework 和 defaultMainWithOpts 设置或增加要通过的测试数量?
- reactjs - 为什么我无法对 console.log() 做出任何反应?
- python - 设置 Discord Bot 的简单 Docker 问题