asp.net-core - F# ASP.NET Core 项目:EntryPointAttribute 错误
问题描述
这是我的 ASP.NET Core Web API 入口点:
open Microsoft.AspNetCore
open Microsoft.AspNetCore.Hosting
module Hosting =
let BuildWebHost args =
WebHost
.CreateDefaultBuilder(args)
.UseStartup<Startup>()
.UseIISIntegration()
.Build()
module Program =
let [<EntryPoint>] main args = Hosting.BuildWebHost(args).Run(); 0
这是来自Program.fs
我项目中的最终文件。
经过几个月的顺利编译,我突然遇到以下编译失败:
错误 FS0433:标有“EntryPointAttribute”属性的函数必须是编译序列中最后一个文件中的最后一个声明。
这是最后一个文件中的最后一个声明——知道为什么这会突然开始失败吗?
解决方案
这是因为用户机密基础结构将文件作为程序集中的最后一个文件注入。它在 F# 的下一个版本中得到修复:请参阅https://github.com/aspnet/Configuration/issues/833。
这里有一个解决方法:https ://medium.com/@dmytrol/making-asp-net-core-user-secrets-work-in-f-projects-9b04572d81f6 ,您可以在其中设置您的用户机密 ID代码库而不是项目文件中。
推荐阅读
- python - Kivy - 居中 BoxLayout
- python - 如何在验证码上使用 Selenium 打开浏览器窗口?
- kivy - 使用滚动视图重新创建 kivy 应用程序以用作屏幕管理器的屏幕
- javascript - 如何加载 UTC 数字日期并将其转换为 unix +new Date()?
- flutter - 列小部件上的颤动文本溢出
- javascript - 从 fetch() 获取 response.data 作为变量在 React-Native 中使用
- python - Kivy:“XXXX”的实例没有“绑定”成员
- json - django-elasticsearch-dsl-drf 与 JSONfield
- android - Android,Kotlin:检查转换为字符串的 NdefMessage 是否等于另一个字符串
- ruby-on-rails - 推送到 heroku 失败(预接收挂钩被拒绝)