Я создаю сервис windows проект и библиотеку для базы данных. Я шифрую строку подключения, но при запуске проекта у меня появляется эта ошибка.
Служба не ответила на запрос запуска или управления своевременно.
Когда я использую отладчик, я вижу эту ошибку:
Инициализатор типа для 'ProjectName' выдал исключение
ArgumentException: ключевое слово не поддерживается: 0prcbyhc2d + rtcgwpkbpkkfpweh516az / av3c9gewaxrdpqzyddbisnyl81cl9heb3xyfqlox6gv3ew / lnvzo0iiybiqgyskgumyaq6xuiuv3kye5hedu2zwovtsdt / 91gawrqxnmgtik8wbvrwkivl6xlilhona7mp84xll27hc9ysbz4 / iqs1lmjb690ob3u5vste29gmwq9vysoeflrhowvqnvu1pllhaoylbgju
1015 * имя параметра: ключевое слово
ProjectInstaller (для шифрования строки подключения)
public override void Install(IDictionary stateSaver)
{
base.Install(stateSaver);
string projectDirectory = Context.Parameters["TARGETDIR"].ToString();
string connectionString = Context.Parameters["DB_CONNECTION"].ToString();
string exeFileProject = Assembly.GetExecutingAssembly().Location;
string cryptConnectionString = extract.EncryptStr(connectionString, Code.encryptKeyLicense);
string xml = exeFileProject + ".config";
XmlDocument document = new XmlDocument();
document.Load(xml);
XmlNode connectionStringNode = document.SelectSingleNode("//configuration/connectionStrings/add[@name='LMDBContext']");
connectionStringNode.Attributes["connectionString"].Value = cryptConnectionString;
document.Save(xml);
}
DbContext в библиотеке :
public LMDBContext()
{
ExtractLicenseData extract = new ExtractLicenseData();
string encryptConnectionString = ConfigurationManager.ConnectionStrings["LMDBContext"].ConnectionString.ToString();
string decryptConnectionString = extract.DecryptStr(encryptConnectionString, Constant.encryptKeyLicense);
Database.Connection.ConnectionString = decryptConnectionString;
}