Visual Studio 2017中F#新建项目无Console Application选项,如何创建?
如何在Visual Studio 2017 15.6.5中创建F# .NET Standard控制台应用?
我来帮你解决这个问题——在VS2017 15.6.5里,.NET Standard分类下确实没有F#控制台应用的模板,不过有两种方法可以实现你想要的效果:
方法一:先创建常规F#控制台应用,再切换到.NET Standard
这种方法更直观,适合大多数场景:
- 打开Visual Studio 2017,点击创建新项目
- 在顶部搜索框输入「F# Console Application」,你会看到对应的模板(它默认归类在
.NET Core或.NET Framework分类下,而非.NET Standard) - 完成项目创建后,右键点击项目名称,选择编辑项目文件(也就是打开
.fsproj文件) - 找到
<TargetFramework>节点,把它的值修改为你需要的.NET Standard版本,比如:<TargetFramework>netstandard2.0</TargetFramework> - 保存文件,项目会自动重新加载,这样就得到了一个以.NET Standard为目标的控制台项目
方法二:从.NET Standard类库改造为控制台项目
如果你已经创建了.NET Standard类库,也可以直接改造:
- 右键项目选择编辑项目文件,在
<PropertyGroup>节点中添加一行,指定输出类型为可执行文件:<OutputType>Exe</OutputType> - 打开
Program.fs,把默认的类代码替换成带入口点的模块:module Program [<EntryPoint>] let main argv = printfn "Hello from .NET Standard Console!" 0 // 返回退出状态码 - 保存后重新加载项目,你的类库就变成控制台应用了
重要提示
需要注意的是:.NET Standard本身是一套API规范,主要用于类库开发,它并不包含运行时。所以直接创建的.NET Standard控制台应用无法独立运行,你需要在基于.NET Core或.NET Framework的项目中引用它,或者通过指定运行时环境来启动。如果你的需求只是创建一个能直接运行的F#控制台应用,更推荐直接选择.NET Core或.NET Framework分类下的原生控制台模板,这样可以直接编译运行,无需额外配置。
内容的提问来源于stack exchange,提问作者Soldalma
相关产品推荐
相关产品推荐

