首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >asp.net核心通过url执行

asp.net核心通过url执行
EN

Stack Overflow用户
提问于 2020-04-01 08:30:04
回答 1查看 40关注 0票数 0

我已经创建了一个APICore3.1API项目,在其中我还实现了一些对外部ASP.NET服务的WebAPI调用,然后将其导入并保存到我的本地数据库中。

假设我有一个"/imports/mymethod“路由,它将触发导入运行。

现在我想把它设为windows计划任务,这样它就可以每10分钟运行一次。

代码语言:javascript
复制
When I execute the "exe" file "myproject.exe" it says:

Microsoft.Hosting.Lifetime[0]
Now listening on: http://localhost:5000"

有没有可能编译我的项目并运行编译后的exe文件,像"myproject.exe -path http://localhost:5000/imports/mymethod“这样的参数,然后它就会用这个方法运行路由?

或者有没有其他方法可以做到这一点?

诚挚的问候

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-04-01 10:46:32

如果您在本地计算机上仅出于学习目的运行此api,则以下是最简单的选择。1)提取导入路由背后的导入逻辑,并使用控制台应用程序调用此逻辑,并使用计划任务每10分钟运行一次此函数。重要提示:如果仅在本地计算机上运行,并且您不打算将其部署到生产环境中,请执行此操作

如果您希望在生产环境中实现此功能,那么您几乎没有其他选择

1)您可以编写一个webjob,它与您的web api一起部署,并每10分钟触发一次,然后将数据导入到您的数据库中。请参阅Run background tasks with WebJobs in Azure App Service。您可以在webjob内部编写逻辑以导入数据并插入到数据库中

2)使用时间触发的azure函数,调用需要导入数据库的接口。这种方法,虽然声音增加了另一个项目,你必须管理

3)创建一个定时器触发逻辑app,它执行与2中提到的azure函数相同的逻辑

4)在您的web api中实际将您的路由暴露为"/imports/mymethod“,然后在您的本地计算机上创建一个powershell脚本或批处理文件,该脚本或批处理文件调用web api,并使用windows计划程序将powershell脚本或批处理文件安排为每10分钟运行一次。

我个人的偏好是使用webjob,因为webjob是专门为运行后台任务而创建的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60961930

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档