gpt4 book ai didi

c# - 项目运行时在 MVC 项目中重复代码

转载 作者:行者123 更新时间:2023-11-30 15:03:54 24 4
gpt4 key购买 nike

我想知道是否可以在您的 Web 项目启动时循环一些代码(我使用的是 MVC4 RC 和 C#)。例如,您有一个实体工厂。这家工厂每小时生产一把椅子。所以项目应该在服务器上运行时执行此操作。无论用户是否在网站上。这可能吗?你会怎么做?

最佳答案

是的,有一种方法可以做到这一点:将某些内容放入具有特定生命周期的缓存中,然后向 OnCacheRemovedCallback 注册。在此回调中执行您想执行的操作并将新项目插入缓存。您需要在启动时插入 6 以启动链。这是由 SO 完成的(参见 https://blog.stackoverflow.com/2008/07/easy-background-tasks-in-aspnet/ ),所以它有效。它显然有效,可以称为实用的解决方案。

有些人会认为这在某种程度上是“骇人听闻的”,我倾向于在不知道您做什么或为什么要这样做的情况下不这样做。执行此类任务绝对不是艺术。


另一个选项(user1308743 已经提到了这个):创建一个执行您需要的 exe,并让它每小时从任务计划程序中调用。


一个略有不同的选择:编写一个 Windows 服务并实现一个计时器或使用类似 Quartz.NET 的东西以这种方式安排您的工作。也许是工作量最大、企业最喜欢的解决方案,但它确实有效(已经实现了类似的东西,并且对我需要做的事情来说就像一个魅力)。作为附加值(value),您可以以可配置的方式编写您的日程安排。


在 SO 上找到另一个选项:Recurring tasks in ASP .NET

关于c# - 项目运行时在 MVC 项目中重复代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11108003/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com