visual-studio - 如何在 .NET Core 项目中使用 F# 的命令行选项?
问题描述
我需要在 .NET Core 项目中的 F# 代码中使用保留字 sig 之一。如手册所述:
如果您使用 --mlcompatibility 编译器选项,则上述关键字可用作 identifiers。
编译环境也可以通过设置项目属性来控制。对于面向 .NET Core 的项目,.fsproj 中的“其他标志”属性...用于指定额外的命令行选项。
在尝试这样做时,我成功地使我的项目崩溃了。
如何将命令行选项放入 .NET Core 项目?
TIA。
解决方案
在您遇到其他标志问题的部分- 它需要进入 a/the PropertyGroup
. 以下是默认控制台模板的示例:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net5.0</TargetFramework>
<OtherFlags>$(OtherFlags) --mlcompatibility</OtherFlags>
</PropertyGroup>
<ItemGroup>
<Compile Include="Program.fs" />
</ItemGroup>
</Project>
遗憾的是,这不会解决您的主要观点 -sig
用作标识符仍然是一个错误(该选项只是删除了警告)
如果你真的想使用标识符,你可以试试这个小技巧:
let ``sig`` = "F#"
printfn "Hello world %s" ``sig``
推荐阅读
- vb.net - 示例数据表绑定到 gridview 在 vs2019-2017 中不起作用
- javascript - 如何正确清除超时
- css - “Gotham Bold”字体系列在 Safari 浏览器中不起作用
- amazon-web-services - AWS API Gateway 集成请求 Http 标头未传递给 lambda
- javascript - 无法使用 Patches.get 值来编写 spark AR 脚本
- android - 使用 Tensorflow 在 Android 上实现离线连续语音识别器的最有效方法是什么?
- java - 在扫描仪行中直接添加用户输入的数字而不是下面的行?
- c# - 每次我使用多个表时序列化类型对象时检测到循环引用
- c# - Autofac.Core.Registration.ComponentNotRegisteredException, FAILED: 处理后台作业时发生异常
- hibernate - Spring mvc休眠多租户数据库方法