“.fsproj”项目文件记录在哪里?

Where is the `.fsproj` project file documented?

提问人:toraritte 提问时间:11/14/2023 最后编辑:toraritte 更新时间:11/14/2023 访问量:45

问:

更具体地说:是否有专门的文档页面列出 F# 项目文件特有的“属性”?.fsproj

我为什么要问?

几天前开始学习 F#,但现在开始意识到我还必须学习 .NET 生态系统:

F# 文档中遇到了“签名”页面,因此我想尝试生成签名文件。在终端上创建玩具项目时(并且将会遇到)一些障碍,但是一旦我想通了,我就遇到了同样的问题:如何生成F#签名文件(没有Visual Studio).fsi

答案有解决方案,但没有链接。它确实提到了编译器选项,并且 F# 编译器选项页确实在最顶部提到:--sig

本文介绍 F# 编译器的编译器命令行选项。命令生成在 F# 项目文件上调用 F# 编译器。F# 项目文件以扩展名标注。dotnet.fsproj

还可以通过设置项目属性来控制编译环境。对于面向 .NET Core 的项目,中的“其他标志”属性用于指定额外的命令行选项。<OtherFlags>...</OtherFlags>.fsproj

在这一点上,我开始怀疑:我可能想稍后调整我的项目,而中央项目文件似乎是这样做的最佳位置。它记录在哪里?它是 XML,所以也必须有一个模式,等等。 剧透:一段时间后找到了 MSBuild 项目文件架构引用.fsproj)

通过筛选搜索结果(虽然之前没有任何 .NET 经验),我了解到该文件“是一个 MSBuild 脚本”,并且每个 .NET 语言和框架都使用 MSBuild。(我发现 ASP.NET Core 的“了解项目文件”文档页面比任何 MSBuild 文章都要好.......fsproj

长话短说,我确实需要在某一时刻浏览 MSBuild 文档,但很高兴知道是否有专门的项目文件页面。.fsproj


F# 文档中的“使用 XML 注释记录代码”一文中的另一个示例:

您可以通过执行下列操作之一在编译时生成 XML 文件:

  • 可以将元素添加到项目文件的节中,这将在项目目录中生成一个 XML 文件,其根文件名与程序集相同。例如:GenerateDocumentationFile<PropertyGroup>.fsproj

    <GenerateDocumentationFile>true</GenerateDocumentationFile>
    

有关更多信息,请参见 GenerateDocumentationFile 属性

f# msbuild fsproj

评论

1赞 Martin521 11/14/2023
对于简单的项目,我通常不需要过多地接触 .fsproj。是的,对于更复杂的问题,您需要深入研究 msbuild。签名也一样。对于中小型应用程序项目,通常不需要它们。--sig 编译器选项不能很好地工作。如果您对更多感兴趣,请查看 github.com/nojaf/telplin

答: 暂无答案