【发布时间】:2020-11-28 02:57:50
【问题描述】:
只是想问一下我是否可以安排一个 ASP 网络代码隐藏在每天 00:00 运行?我现在正在做的是转到 Plesk > Scheduled Task > Fetch URL 并在其上写入 URL,希望计划页面的 Page Load 事件能够运行。不过好像不是这样的。
我在 Hostgator 上托管一个共享环境中的网站,所以 Windows 调度程序对我来说不可行,Quartz 也不可行,因为我是 asp.net 的初学者,但仍然不知道如何在之后准确使用它谷歌搜索一个小时。甚至不知道如何编写 php,所以如果这是您建议的解决方案,请明确说明
有什么方法请推荐
如果有人能提供帮助,我们将不胜感激。提前非常感谢:)
另一个问题
cmd3.Parameters.AddWithValue("@sid", sid);
MySqlDataReader sdr2 = cmd3.ExecuteReader();
while (sdr2.Read())
{
string clid = sdr2.GetString(0);
string couid = sdr2.GetString(0).Split('-')[0] + "-" +b sdr2.GetString(0).Split('-')[1];
string day = sdr2.GetString(1).ToLower();
string start = sdr2.GetString(2) + ":00";
string end = sdr2.GetString(3) + ":00";
string teacher = sdr2.GetString(4);
sqlconn.Close();
sqlconn.Open();
MySqlCommand cmd4 = new MySqlCommand("select " + gra + " from classes where courseid=@cid and " + gra + " is null", sqlconn);
cmd4.Parameters.AddWithValue("@cid", couid);
MySqlDataReader sdr3 = cmd4.ExecuteReader();
if (sdr3.Read())
{
sqlconn.Close();
sqlconn.Open();
MySqlCommand cmd5 = new MySqlCommand("delete from enroll where classid = @clid and studentid=@sid;update " + day + " set currentstudent=currentstudent-1 where classid=@clid and start=@start and end=@end and teacher=@teacher", sqlconn);
cmd5.Parameters.AddWithValue("@clid", clid);
cmd5.Parameters.AddWithValue("@sid", sid);
cmd5.Parameters.AddWithValue("@start", start);
cmd5.Parameters.AddWithValue("@end", end);
cmd5.Parameters.AddWithValue("@teacher", teacher);
cmd5.ExecuteNonQuery();
}
}
这会导致连接错误 MySql.Data.MySqlClient.MySqlException: 'Invalid attempt to Read when reader is closed.' 。我认为这是因为我在为 sdr3 和 cmd5 打开新连接时关闭了读取 sdr2 的原始连接。有什么办法解决吗?
【问题讨论】:
-
不清楚您到底要做什么? ASP.net 专门用于基于 http 请求生成 Web 内容。它可以执行一些非常复杂的基于服务器的任务,但它必须基于/由 http 客户端请求发起。
-
所以我想每天00:00更新数据库,有什么办法吗?谢谢~
-
您是否希望每天午夜更新 MySql / MSSQL 数据库?您可以使用 Plesk 计划任务来触发针对数据库的存储过程,而不是触发 c#/vb 代码来执行相同的操作。
-
@RazorKillBen- 有关如何实际实现这一目标的更多详细信息?是的,你是对的,但我还有其他事情要做:根据行的字段值发送电子邮件
-
听起来你需要一个 .net 模块,它可以编译成可执行文件,你可以编组所有任务(数据库调用、电子邮件等),然后你需要安排该模块在所需时间。
标签: c# asp.net scheduled-tasks plesk