C# 用定时器呼叫控制器

C# 用定时器呼叫控制器,c#,.net,asp.net-mvc,C#,.net,Asp.net Mvc,我必须向远程程序发送查询并接收数据。然后把它们放在我的数据库里。 例如,是否可以每60秒调用控制器的操作 谢谢 另外,我认为这必须在服务器端完成。不是JS解决方案 更新: 首先,我有MS SQL Server DB。 其次,有一个远程程序监听特定的TCP端口并等待查询。我希望每60秒发送一次查询并解析响应,然后将解析后的数据放入我的MS SQL Server数据库。使用Ajax,您可以创建一个计时器,每x秒向控制器发送数据。 我的web应用程序中的拼写检查器插件可以做到这一点,以便在键入时进行拼

我必须向远程程序发送查询并接收数据。然后把它们放在我的数据库里。 例如,是否可以每60秒调用控制器的操作

谢谢

另外,我认为这必须在服务器端完成。不是JS解决方案

更新:

首先,我有MS SQL Server DB。

其次,有一个远程程序监听特定的TCP端口并等待查询。我希望每60秒发送一次查询并解析响应,然后将解析后的数据放入我的MS SQL Server数据库。

使用Ajax,您可以创建一个计时器,每x秒向控制器发送数据。
我的web应用程序中的拼写检查器插件可以做到这一点,以便在键入时进行拼写检查。

使用Ajax,您可以创建一个计时器,每x秒向控制器发送一次数据。
我的web应用程序中的拼写检查器插件可以做到这一点,在您键入时进行拼写检查。

我认为您最好使用一个独立的服务(windows、wcf、msmq等),该服务在后台运行,“发送查询”并保存到数据库中

Web应用程序的设计目的不是用作基于时间的“始终活动”机制。“计时”需要状态,HTTP是一种无状态协议

不要试图将功能硬塞进设计不适合处理它的东西中

那么我可能完全误解了你的问题。很有可能

令人困惑的陈述:

这可以调用控制器的操作

如果是外部的,你怎么知道它是控制器?这是一个外部API吗

有一个远程程序监听特定的TCP端口并等待查询


这听起来不像是一个web应用程序/控制器。

我认为您最好使用一个独立的服务(windows、wcf、msmq等),该服务在后台运行,“发送查询”并保存到数据库中

Web应用程序的设计目的不是用作基于时间的“始终活动”机制。“计时”需要状态,HTTP是一种无状态协议

不要试图将功能硬塞进设计不适合处理它的东西中

那么我可能完全误解了你的问题。很有可能

令人困惑的陈述:

这可以调用控制器的操作

如果是外部的,你怎么知道它是控制器?这是一个外部API吗

有一个远程程序监听特定的TCP端口并等待查询


这听起来不像是web应用程序/控制器。

您可以使用cron on*nix基本系统。或者你的程序可能每小时触发一次事件

0 * * * *  lynx url-of-your-program-address.com/action/to/call

您可以在*nix基本系统上使用cron。或者你的程序可能每小时触发一次事件

0 * * * *  lynx url-of-your-program-address.com/action/to/call

你的问题令人困惑。但是,既然我们在这里只是想猜测你在说些什么,那么有一个解决方案可能会很接近

(顺便说一句,我还没有编译或测试过这个……因为我为什么要在意)


你的问题令人困惑。但是,既然我们在这里只是想猜测你在说些什么,那么有一个解决方案可能会很接近

(顺便说一句,我还没有编译或测试过这个……因为我为什么要在意)


根据您的解决方案的灵活性,我将使用Windows服务解决方案,其中包含计时器,也可以使用Quartz.Net。
您可以使用下面的链接找到更多详细信息,具体取决于您的解决方案的灵活性。我将使用带有计时器的Windows服务解决方案,也可以使用Quartz.Net。
您可以使用下面的链接找到更多详细信息

请在您的问题中添加一个语言标记,以确保它能够送达能够帮助您的正确人员。为什么您不能使用JavaScript?这将是从浏览器中推送数据的自然方式。假设在站点上输入10个用户。60秒后,将向远程系统发送10个请求。如果网站上没有用户?这是一个非常令人困惑的问题。数据是从数据库中计算还是提取的?浏览器或服务器上的“DB”是否有问题?你为什么希望每60秒发生一次?“远程”程序相对于客户端、相对于服务器还是两者都是远程的?查询是直接从客户端发送到远程程序,还是通过您的服务器发送?@user348173:您的评论更令人困惑。每分钟会有10个请求到达,这是一个问题吗?“如果网站上没有用户?”这句话甚至不是一个问题,尽管存在问号。请在你的问题中添加一个语言标记,以确保它能够到达可以帮助你的正确人员。为什么你不能使用JavaScript?这将是从浏览器中推送数据的自然方式。假设在站点上输入10个用户。60秒后,将向远程系统发送10个请求。如果网站上没有用户?这是一个非常令人困惑的问题。数据是从数据库中计算还是提取的?浏览器或服务器上的“DB”是否有问题?你为什么希望每60秒发生一次?“远程”程序相对于客户端、相对于服务器还是两者都是远程的?查询是直接从客户端发送到远程程序,还是通过您的服务器发送?@user348173:您的评论更令人困惑。每分钟会有10个请求到达,这是一个问题吗?“如果网站上没有用户?”这句话甚至不是一个问题,尽管有一个问号。