在Unity中使用动态关键字/.NET 4.6功能

2024-02-17

我正在尝试将 GraphQL 实现到 Unity3D(版本 2017.1.0f3 Personal)中。我正在使用 .NET 4.6(实验版),但尽管如此,Unity 不支持动态关键字。这很奇怪,因为.NET 4.0它是.NET的一部分。除了在 Unity 中。我正在谷歌搜索一些解决方案如何让它工作,但没有动态关键字的解决方案。错误是这样的:

Severity    Code    Description Project File    Line    Suppression State
Error   CS1980  Cannot define a class or member that utilizes 'dynamic' 
because the compiler required type 
'System.Runtime.CompilerServices.DynamicAttribute' cannot be found. Are you 
missing a reference?    skiing-prototype (1)    D:\skiing-prototype 
(1)\Assets\Scripts\GraphQL.cs   62  Active

这是使用 GraphQL C# 客户端的唯一警告。有没有人尝试过让它发挥作用?我还没有找到任何更大的努力来让它启动并运行。

EDIT:

我在这里使用这个客户端:https://github.com/bkniffler/graphql-net-client https://github.com/bkniffler/graphql-net-client

这也是来自 Visual Studio 的错误,但在 Unity 控制台中它也显示错误,将立即更新具体内容

Assets/Scripts/GraphQL.cs(80,16): error CS1980: Dynamic keyword requires 
`System.Runtime.CompilerServices.DynamicAttribute' to be defined. Are you 
missing System.Core.dll assembly reference?

这是unity编辑器的错误,在Visual Studio中似乎是一样的


第一步是检查 Unity 是否可以识别这 2 个基本的 C# 6 功能MS site https://learn.microsoft.com/en-us/dotnet/csharp/whats-new/csharp-6#null-conditional-operators.

1.尝试“索引初始化器”功能:

private Dictionary<int, string> webErrors = new Dictionary<int, string>
{
    [404] = "Page not Found",
    [302] = "Page moved, but left a forwarding address.",
    [500] = "The web server can't come out to play today."
};

2。然后是“字符串插值”功能:

private string FirstName = "";
private string LastName = "";
public string FullName => $"{FirstName} {LastName}";

如果他们给你错误那么问题是not只是dynamic关键字但是Visual Studio无法识别的问题.NET版本由Unity设置。

从评论部分来看,您的 Unity 无法编译第一个示例。


逐一完成这些步骤以找到可能的修复方法。做not跳过他们。

1.转到编辑-->项目设置-->播放器-->其他设置-->配置-->脚本运行时版本-->实验(.Net 4.6等效)。

2.转到编辑 --> 项目设置 --> 播放器 --> 其他设置 --> 配置 --> Api 兼容性级别 --> .NET 4.6

3.重新启动Unity编辑器和Visual Studio。您必须重新启动两者。

测试上面的两个 C# 功能。如果它们有效,那么dynamic关键字也应该如此。如果他们不这样做,则继续执行#4。

4.更新Visual Studio。这个非常重要。将 Visual Studio 更新到最新版本/补丁。

5如果您仍然无法编译上述两个 C#6 功能,请重新安装 Visual Studio 和 Unity,然后执行步骤#1 and #2再次因为某些文件丢失。

6最后,如果您使 C#6 的两个功能都正常工作,但动态关键字仍然不起作用,则从统一2017.1 to 统一2017.2 https://unity3d.com/unity/beta。此版本修复了许多 .NET 问题。

请注意,我正在使用统一2017.2 https://unity3d.com/unity/betadynamic关键字没有任何问题。还,GraphQL工作正常。

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

在Unity中使用动态关键字/.NET 4.6功能 的相关文章

  • 如何使用C从http下载文件?

    最近几天我试图弄清楚如何从 URL 下载文件 这是我对套接字的第一个挑战 我用它来了解协议 所以我想在没有 cURL 库的情况下只用 C 语言来完成它 我搜索了很多 现在我可以打印页面的源代码 但我认为这与文件不同 我不必只将接收到的数据从
  • 使用管道在父级和子级之间传递整数值

    我对如何正确使用 pipeline 在两个进程之间传递整数值有点困惑 在我的程序中 我首先创建一个管道 然后分叉它 我假设我有 两个 管道 据我了解 这是我的任务 我的父母通过 for 循环检查某个操作的整数值 i 增加计数变量 并将值保存
  • SOAP Web 服务:多台服务器,一个接口

    我有一个场景 需要任意数量的服务器来提供相同的 SOAP Web 服务 我想生成一组代理类 并能够为它们提供一个位置 以便在运行时将它们指向不同的服务器 不幸的是 看起来好像wsdl port节点 子节点wsdl service 要求对特定
  • 使用 POST 的 HttpWebRequest 的性能

    我有一个用于测试网络服务的小工具 它可以使用 POST 或 GET 调用 Web 服务 使用POST的代码是 public void PerformRequest WebRequest webRequest WebRequest Creat
  • 如何使用T4从一个模板同时生成两个文件?

    我遇到的情况是 我需要生成两个 CSharp 代码文件 它们的代码几乎相同 但方法的输入和输出类型的命名空间不同 事实上 每个文件都针对特定国家 地区 并且类型来自特定国家 地区的 WSDL 我正在围绕服务编写一些包装器 逻辑完全相同 但从
  • 如何在 C++ 中为指针“this”赋值

    在函数中 如何分配this一个新的价值 您可以分配对象this点于 this XY 但你不能分配直接值this this XY Error Expression is not assignable
  • 每个元素的 asp.net Web 表单自定义错误消息

    我创建了一个 Web 应用程序 表单 以及后端 SQL 插入和查询 目前我正在显示所有用户错误消息 div style padding 1em div
  • Visual Studio 2013 调试器显示 std::string 的奇怪值

    我有一个大型的 cmake 生成的解决方案 其中包含许多项目 由于某种原因 我无法查看字符串的内容 因为根据调试器 Bx Buf含有一些垃圾 text c str 正确返回 Hello 该问题不仅仅发生在本地字符串上 返回的函数std st
  • 用于 C++ 中图像分析的 OpenCV 二进制图像掩模

    我正在尝试分析一些图像 这些图像的外部周围有很多噪声 但内部有一个清晰的圆形中心 中心是我感兴趣的部分 但外部噪声正在影响我对图像的二进制阈值处理 为了忽略噪音 我尝试设置一个已知中心位置和半径的圆形蒙版 从而使该圆之外的所有像素都更改为黑
  • 当我尝试传递临时地址作为参数时,它是一个 UB 吗?

    对于以下 C 代码 include
  • C# 可以为控制台应用程序部分类“程序”类吗?

    我想知道是否可以将为任何控制台应用程序创建的默认 程序 类更改为部分类 我想这样做是因为我想要更好的组织 而不是将所有方法都放在按区域分类的 1 个文件中 对我来说 将某些方法类别放在单独的文件中会更有意义 我对分部类的理解是 它是多个文件
  • main.cpp 是必需的吗?

    我试图编译一个程序cmake 我最终删除了我的main cpp文件 我刚刚将其复合到另一个包含我的项目名称的文件中 即 我刚刚将主函数剪切并粘贴到该文件中 问题是我有一个main cpp未发现错误 不确定是否在C 一个名为main cpp是
  • 如何在Windows窗体中打开进程

    我想在我的 Windows 窗体应用程序中打开进程 例如 我希望当用户按下 Windows 窗体容器之一中的按钮时 mstsc exe 将打开 如果他按下按钮 它将在另一个容器上打开 IE DllImport user32 dll SetL
  • fgets溢出后如何清除输入缓冲区?

    当输入字符串超出其预定义限制时 我遇到了 fgets 的小问题 以下面的例子为例 for index 0 index lt max index printf Enter the d string index 1 if fgets input
  • C++网络序列化[关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我正在寻找一种将 C 数据包序列化为网络流的解决方案 我在这里看到很多帖子提到人们 ACE 谷歌协议缓
  • 使用未命名命名空间而不是静态命名空间

    我可以假设在未命名命名空间中声明的对象相当于static namespace int x 1 static int x 2 FWIK 在这两种情况下 x将具有静态存储期限和内部链接 声明为的对象的所有规则也是如此static适用于未命名名称
  • 如何配置 qt Creator 以显示 C++ 代码而不是反汇编程序?

    昨天我做了很多事情 比如更新 GCC Clang 和重新安装 Qt Creator 今天 在逐步调试我的代码时 调试器显示的是反汇编代码 而不是我编写的 C 代码 紧迫F10 or F11 调试器正在进入汇编代码而不是 cpp nor h我
  • java有类似C#的属性吗? [复制]

    这个问题在这里已经有答案了 C 属性 我的意思是 get 和 set 方法 是一个非常有用的功能 java 也有类似 C 的属性吗 我的意思是我们如何在 java 中实现类似以下 C 代码的内容 public string Name get
  • 具有重复值的 Sqlite 列

    就说专栏吧aSQLite 数据库的非常重复 始终有相同的 4 个值 其他值可能稍后出现 但不同值的数量将少于 1000 个 VALUES hello world it s a shame to store this str many tim
  • NHibernate:无状态会话错误消息无法获取代理

    我正在使用 nHibernate 无状态会话来获取对象 更新一个属性并将对象保存回数据库 我不断收到错误消息 无状态会话无法获取代理 我在其他地方有类似的代码 所以我不明白为什么这不起作用 有谁知道问题可能是什么 我正在尝试更新Screen

随机推荐

  • 通过 jQuery ajax 提交表单,包括文件上传

    HTML
  • WP8 - 此软件包使用的应用程序名称尚未为此应用程序保留

    我正在将 Windows Phone 8 应用程序提交到应用程序商店 当我单击Review And Submit我收到错误 This package is using an app name that hasn t been reserve
  • 在 Spacy 中基于现有英语模型实现自定义 POS Tagger:NLP - Python

    我正在尝试使用下面的代码重新训练 spacy 中现有的 POS Tagger 以显示某些错误分类单词的正确标签 但它给了我这个错误 警告 未命名向量 这不允许多个向量模型 待加载 形状 0 0 from spacy vocab import
  • 如何在不生成整数的情况下找到斐波那契数的前 k 位数字?

    我必须找到斐波那契数列 2 10 6 以内的所有斐波那契数的前 k 位数字 显然 我们不能将斐波那契数列的值存储在任何变量中 即使计算所有斐波那契数本身也需要大量的计算时间 那么 有没有办法只得到斐波那契数的前k位而不生成整个数呢 由于您只
  • ajax成功返回0

    我需要一点帮助 我设计了我的自定义ajax 函数 这是一个简单的表单 输入 5 个值进行验证 然后通过 ajax 将数据发送到 php 函数 该函数通过电子邮件发送这些详细信息 成功后 将向用户显示弹出窗口以进行确认 我已经应用了验证 并且
  • 如何在启动时启动 Docker for Mac 守护进程?

    我想让 Docker for Mac 在启动时启动 而不是在登录时启动 我该怎么做呢 我想创建一个LaunchDaemon 我只是不知道要启动什么程序 我看到的所有例子似乎都使用docker machine定义一个虚拟机 但文档现在说doc
  • 简短的Python代码来表达“选择较低的值”?

    我的意思是 我正在寻找返回较低值的非常短的代码 例如 a 1 2 3 4 5 6 7 8 9 10 b 1 2 3 4 5 6 7 8 len a 10 len b 8 if fill this in print lesser value
  • 使用 QNetworkAccessManager 的 post() 方法上传文件

    我在使用 Qt 应用程序时遇到一些问题 特别是 QNetworkAccessManager 类 我正在尝试使用 QNetworkAccessManager 的 post 方法执行二进制文件的简单 HTTP 上传 文档指出我可以为 post
  • 在标头中发送会话密钥与仅 HTTP cookie

    我想知道在我的系统中发送会话密钥的最佳选择 在我的系统中 有一个 API 服务器可供 Web 浏览器 命令行界面和桌面应用程序使用 它通过查看用户的身份来验证用户的身份AuthorizationHTTP 标头 目前 浏览器将会话密钥存储在
  • CodeIgniter 和 SimpleTest——如何进行我的第一个测试?

    我习惯使用 LAMP PHP5 MySQL 以及带有 Xdebug 的 NetBeans 进行 Web 开发 现在我想通过学习如何使用 A 正确的测试和 B 框架来改进我的开发 所以我设置了 CodeIgniter SimpleTest 和
  • 使用模拟库在循环中进行用户输入的 Python 测试

    我正在尝试使用模拟库来测试一段代码 在此代码中 用户原始输入在 for 循环中被接受 如下所示 我已经写了测试用例test apple record可以为托盘编号提供单个用户输入值 但是 对于 for 循环中的每次迭代 它只采用与预期相同的
  • 直接管理 + Docker

    我有 Direct Admit 的 VPS 托管 有 Debian Jessie 我可以使用 ssh 现在我想使用 docker 容器安装 discourse 我应该做一些超出手册提示内容的事情吗 我是说 我对港口一无所知 例如 直接管理使
  • 获取 URL 的基本名称,然后将活动类放入导航栏

    示例链接 http localhost test page php 我有一段 JavaScript 代码 它将放置一个active导航栏的类 如果该导航栏的 url href current url 当前的 JavaScript 仅将活动类
  • 通过簇替换重新采样

    我想绘制簇 由变量定义id 从数据集中进行替换 与之前回答的问题相比 我希望选择 K 次的聚类以使每个观察重复 K 次 也就是说 我正在进行集群引导 例如 以下示例id 1两次 但重复观察id 1仅在新数据集中出现一次s 我想要所有的观察结
  • 使用平铺进行透视图像转换

    在寻找一个可以用于我计划创建的新应用程序的良好图像处理库 我将使用 C NET VS 2008 我的应用程序需要执行以下操作 在启动时加载图像并将其显示在图片框中 然后我应该能够在图片框中的任何位置选择四个点 左上 右上 左下 右下 然后
  • 这是在java中声明记录器变量的最佳方法

    我只是想知道在 java 中声明记录器变量的最佳方法是什么 以下是一些声明 1 gt private static final Logger logger Logger getLogger ServiceImpl class 2 gt pr
  • 如何在c中找到内存分配的最大限制

    我想确定我可以在计算机中分配的最大内存限制是多少 这是我为此任务编写的代码 include
  • 使用 win32inet.WinHttpGetProxyForUrl 的正确方法是什么

    我正在尝试使用 Win32com 开发人员公开的 Microsoft WinHttp 库的一项功能 不幸的是 大多数库似乎没有文档记录 并且没有通过 win32com 库使用 win32inet 功能的正确方法的示例 这是我到目前为止所拥有
  • 有没有办法一次性清除表单中的所有字段?

    我刚刚开始学习 C 我想知道是否可以清除所有文本框的内容 例如我的表单中的内容 我知道如何一一清除 但这对我来说不实用 thanks 编辑 我找到了答案 非常感谢大家 您可以使用以下循环来清除活动表单中的所有文本框对象 foreach Co
  • 在Unity中使用动态关键字/.NET 4.6功能

    我正在尝试将 GraphQL 实现到 Unity3D 版本 2017 1 0f3 Personal 中 我正在使用 NET 4 6 实验版 但尽管如此 Unity 不支持动态关键字 这很奇怪 因为 NET 4 0它是 NET的一部分 除了在