gpt4 book ai didi

c# - 找不到 JobRunShell.cs

转载 作者:行者123 更新时间:2023-11-30 12:27:22 27 4
gpt4 key购买 nike

我正在使用 Quartz.Net 来安排作业。请看我的代码。为什么会出现这个错误?

我需要在数据库中注册数据。

错误: enter image description here

我正在使用这段代码来注册数据:

public class NewsSchedule : INewsSchedule
{
public void Run(int minute)
{
DateTimeOffset startTime = DateBuilder.FutureDate(2, IntervalUnit.Second);

IJobDetail job = JobBuilder.Create<NewsJob>()
.WithIdentity("newsJob")
.Build();

ITrigger trigger = TriggerBuilder.Create()
.WithIdentity("trigger1")
.StartAt(startTime)
.WithSimpleSchedule(x => x.WithIntervalInSeconds(60).RepeatForever())
.Build();

ISchedulerFactory sf = new StdSchedulerFactory();
IScheduler sc = sf.GetScheduler();
sc.ScheduleJob(job, trigger);

sc.Start();
}
}
public interface INewsSchedule
{
void Run(int minute);
}
public class NewsJob : IJob
{
public void Execute(IJobExecutionContext context)
{
var sqlConnection = new SqlConnection("Data Source=.;Initial Catalog=NewsApk;Integrated Security=SSPI;");
sqlConnection.Open();
var sqlCommand = new SqlCommand("Insert into JN_NewsCategories(NewsCategoriesFr,NewsCategoriesEn,IsGetNews)Values(@1,@2,@3)");
sqlCommand.Parameters.AddWithValue("@1", "test");
sqlCommand.Parameters.AddWithValue("@2", "test2");
sqlCommand.Parameters.AddWithValue("@3", false);
sqlCommand.ExecuteNonQuery();
sqlConnection.Close();
}
}

更新:

请看:

Select 命令正常工作,但 register 命令不工作。

public class NewsJob : IJob
{
public void Execute(IJobExecutionContext context)
{
var sqlConnection =
new SqlConnection("Data Source=.;Initial Catalog=NewsApk;Integrated Security=SSPI;");
sqlConnection.Open();
var sqlCommand =
new SqlCommand(
"Insert into JN_NewsCategories(NewsCategoriesFa,NewsCategoriesEn,IsGetNews)Values(@1,@2,@3)");
sqlCommand.Parameters.AddWithValue("@1", "test");
sqlCommand.Parameters.AddWithValue("@2", "test2");
sqlCommand.Parameters.AddWithValue("@3", false);

SqlDataAdapter sqlDataAdapter = new SqlDataAdapter("select * from JN_NewsCategories", sqlConnection);
DataTable dataTable = new DataTable();
sqlDataAdapter.Fill(dataTable);// 12 record found. its ok.

sqlCommand.ExecuteNonQuery();

sqlConnection.Close();
}
}

感谢@K.B.我发现错误。 "Message = "ExecuteNonQuery: Connection property has not been initialized."。为什么会出现这个错误?

最佳答案

我找到了答案。

替换这个:

 var sqlCommand = new SqlCommand("Insert into JN_NewsCategories(NewsCategoriesFa,NewsCategoriesEn,IsGetNews)Values(@1,@2,@3)");

用这个:

 var sqlCommand = new SqlCommand("Insert into JN_NewsCategories(NewsCategoriesFa,NewsCategoriesEn,IsGetNews)Values(@1,@2,@3)",sqlConnection);

关于c# - 找不到 JobRunShell.cs,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25527226/

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