System.Data.SqLite在Visual Studio 2017社区版中无法在发布模式下工作

时间:2017-09-14 14:00:29

标签: c# windows-services visual-studio-2017 system.data.sqlite

我正在开发一个使用System.Data.SQLite(NuGet Package)的Windows服务。在调试模式下,服务运行良好,但在发布模式下,在Windows 10上安装服务后,它无法正常工作。以下是我尝试启动服务时的错误快照

enter image description here

我在Windows 10上使用Visual Studio 2017社区版并在.NET 4框架上开发服务。我从https://system.data.sqlite.org/index.html/doc/trunk/www/faq.wiki#q3的常见问题解答中得到了这些内容。但由于视觉工作室的社区版本,我不确定我是否遇到了麻烦。

  

目前,Visual Studio 2005,2008,2010,2012,2013和2015是   支持,包括" Express"版本;但是,为了   构建整个解决方案,包括必要的本机代码   "专业"版本(或更高版本)是必需的。

这是我的SQLite Manager类

using System;
using System.Collections.Generic;
using System.Data.SQLite;
using System.IO;

namespace JST3X
{
    public class SQLiteDBManager
    {
        private string dbFullPath;
        private string DBConnectionString;
        private string DBPassword;
        private SQLiteConnection DBConnction;

        public SQLiteDBManager(string FullFilePath, string Password = null, Boolean CreateIfNotExist = false)
        {
            this.dbFullPath = FullFilePath;
            if ((!File.Exists(this.dbFullPath)) && CreateIfNotExist)
            {
                SQLiteConnection.CreateFile(this.dbFullPath);
            }
            else if (!File.Exists(this.dbFullPath))
            {
                Console.WriteLine(this.dbFullPath + " not found!");
                return;
            }

            if (Password != null)
            {
                this.DBPassword = Password;
                this.DBConnectionString = "Data source=" + this.dbFullPath + ";Password=" + this.DBPassword;
                this.DBConnction = new SQLiteConnection(this.DBConnectionString);
                this.DBConnction.SetPassword(this.DBPassword);
            }
            else
            {
                this.DBConnectionString = "Data source=" + this.dbFullPath;
                this.DBConnction = new SQLiteConnection(this.DBConnectionString);
            }
        }
    }
}

0 个答案:

没有答案