在 IDE 中排查 .NET 转换问题 - Amazon Q 开发者版

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

在 IDE 中排查 .NET 转换问题

通过以下章节,排查在 IDE 中使用 Amazon Q 开发者版执行 .NET 转换时的常见问题。

如何判断任务是否在正常推进?

若在“转换中心”中,Amazon Q 某个步骤耗时过长,您可通过输出日志查看任务是否仍在运行。若日志中持续生成诊断信息,则说明任务仍在正常执行。

要检查输出,请在 Visual Studio 中选择输出选项卡。在显示以下来源的输出:菜单中,选择 Amazon Q 语言客户端

下方屏幕截图展示了 Amazon Q 在转换过程中生成的输出示例。

Amazon Q 开发者版代码转换中心的屏幕截图,显示了 Amazon Q 语言客户端的输出。

为何部分项目未被选中进行转换?

Amazon Q 仅支持转换 C# 语言编写的特定项目类型。目前,Amazon Q 不支持移植 UI 层组件,也不支持转换使用 VB.NET 或 F# 语言编写的项目。有关支持的项目类型及 .NET 项目转换的其他先决条件,请参阅步骤 1:先决条件

若项目或解决方案无法转换,如何获取支持?

如果您无法自行解决问题,可以联系 支持 或您的 AWS 账户 团队提交支持案例。

要获得支持,请提供转换任务 ID, AWS 以便调查失败的作业。要查找转换作业 ID,请在 Visual Studio 中选择输出选项卡。在显示以下来源的输出:菜单中,选择 Amazon Q 语言客户端

如何避免防火墙干扰转换作业?

如果您所在组织使用了防火墙,可能会干扰 Visual Studio 中的转换操作。您可暂时禁用 Node.js 中的安全检查,以排查或测试阻碍转换运行的因素。

环境变量 NODE_TLS_REJECT_UNAUTHORIZED 控制着重要的安全检查。设置NODE_TLS_REJECT_UNAUTHORIZED为 “0” 会禁用 Node.js 拒绝未经授权 TLS/SSL 的证书。这意味着:

  • 接受自签名证书

  • 允许过期证书

  • 允许主机名不匹配的证书

  • 忽略其他所有证书验证错误

如果您的代理使用自签名证书,可设置以下环境变量(无需禁用 NODE_TLS_REJECT_UNAUTHORIZED):

NODE_OPTIONS = —use-openssl-ca NODE_EXTRA_CA_CERTS = Path/To/Corporate/Certs

否则,您必须指定代理使用的 CA 证书,才能禁用 NODE_TLS_REJECT_UNAUTHORIZED

要在 Windows 中禁用 NODE_TLS_REJECT_UNAUTHORIZED,请执行以下操作:
  1. 打开“开始”菜单,搜索环境变量

  2. 选择编辑系统环境变量

  3. 系统属性窗口中,选择环境变量

  4. 系统变量下,选择新建

  5. 设置变量名为 NODE_TLS_REJECT_UNAUTHORIZED,变量值为 0。

  6. 选择确定,保存更改。

  7. 重启 Visual Studio。