C#关于服务的问题
先说一下服务的目的:
当服务开启的时候,定时去对access数据库操作也就是 读写。
项目中 我创建了一个服务,名为NewsService
之前的操作都很正常,只是到操作数据库的时候就出错了,我还是一个一个的打印到文本才知道。
- C# code
/// <summary> /// 执行查询语句,返回SqlDataReader /// </summary> /// <param name="strSQL">查询语句</param> /// <returns>SqlDataReader</returns> public static OleDbDataReader ExecuteReader(string SQLString, params OleDbParameter[] cmdParms) { NewsService.FileNews.File(connectionString); OleDbConnection connection = new OleDbConnection(connectionString); OleDbCommand cmd = new OleDbCommand(); try { NewsService.FileNews.File("打开数据库链接"); connection.Open(); NewsService.FileNews.File("打开数据库链接1"); PrepareCommand(cmd, connection, null, SQLString, cmdParms); NewsService.FileNews.File("打开数据库链接2"); OleDbDataReader myReader = cmd.ExecuteReader(); NewsService.FileNews.File("打开数据库链接3"); cmd.Parameters.Clear(); return myReader; } catch (System.Data.OleDb.OleDbException e) { NewsService.FileNews.File(e.InnerException.ToString()); throw new Exception(e.Message); } }
这个是操做数据库的 在文本里只到NewsService.FileNews.File("打开数据库链接");
剩下的就不在做打印。也就是说到这停止了,出错了。但是也没有什么异常
我打印的链接是:
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=qw_News.mdb
我在项目加了App.config配置,数据库在这个项目目录下,本人觉得好戏nag是没有找到这个数据库。但是我也不知道是为什么,请高手帮忙解决一下!
[解决办法]
刚才看看以前的代码,在服务中我用的mssql,倒是没用过access数据库,
不过我服务里面用的文件都是绝对路径,没有发生过找不到的情况。
需要的文件其实和服务是在同一路径的,但是我用的还是绝对路径。