我有一个类库,用于选择Access女士的记录,然后将选定的记录插入到SQL Server中。检查是否插入Thread OnStart中的记录c#
public class SyncDatabase
{
private static SyncDatabase objs = null;
public static SyncDatabase GetInstance
{
get
{
if (objs == null)
objs = new SyncDatabase();
return objs;
}
}
OleDbConnection con = new OleDbConnection("Provider=Microsoft.jet.oledb.4.0; data source=C:/Users/cheata/Desktop/TimeSheet.mdb");
public void GetData()
{
con.Open();
OleDbCommand cmd = new OleDbCommand("select * from tblEmployee_TimeSheet", con);
DataTable dt = new DataTable();
dt.Load(cmd.ExecuteReader());
var _data = dt.AsEnumerable().Select(row => new tblEmployee_TimeSheet
{
ID = row.Field<int>(0),
EID = row.Field<int>(1),
CheckIn = row.Field<DateTime>(2),
CheckOut = row.Field<DateTime>(3),
DateCheck = row.Field<DateTime>(4)
}).ToList();
con.Close();
var context = TimeSheetDataContext.GetInstance;
foreach (tblEmployee_TimeSheet obj in _data)
{
context.Insert<tblEmployee_TimeSheet>(obj);
}
}
}
我有一个与线程编写一个窗口服务,当窗口启动,MyWindowService也开始。然后它会调用线程OnStart
。
我想是叫我的线程OnStart
SyncDatabase
类库,然后检查在OnStart
法, 价值,我想插入是否已在SQL Server或尚未备案存在。
这是我的线程:
public partial class Thread : ServiceBase
{
public Thread()
{
InitializeComponent();
}
protected override void OnStart(string[] args)
{
}
protected override void OnStop()
{
}
}
可以在任何一个可以告诉我该怎么做吧。
谢谢先进。
你好,你为什么不实例化你的库类,并给你打电话start方法GetData方法? – 2012-08-04 02:04:32
是的,当然我会实例化它,现在不知道如何检查这里的现有记录。 – Nothing 2012-08-04 02:06:57
你的服务不是用线程编写的,你的服务类的名称是线程,它会在你的问题中产生混淆,无论你是在讨论线程还是你的服务 – ZafarYousafi 2012-08-04 02:06:59