c# – 使用提供程序’RsaProtectedConfigurationProvider’无法
发布时间:2020-12-15 06:14:33 所属栏目:百科 来源:网络整理
导读:在我的应用程序中,连接到MS Sql数据库,我使用的是Microsoft.Data.ConnectionUI 我的应用程序在我的计算机上工作.如果我在另一台计算机上运行此应用程序,当我打开连接对话框时,我看到该错误: 这是我的代码: try { connectionString = ShowDialogConnection(
在我的应用程序中,连接到MS Sql数据库,我使用的是Microsoft.Data.ConnectionUI
我的应用程序在我的计算机上工作.如果我在另一台计算机上运行此应用程序,当我打开连接对话框时,我看到该错误: 这是我的代码: try { connectionString = ShowDialogConnection(); SqlConnection connect = new SqlConnection(connectionString); connect.Open(); backgroundWorker1.RunWorkerAsync(); } catch (Exception exc) { MessageBox.Show(exc.ToString()); } string ShowDialogConnection() { string conn = ""; DataConnectionDialog dlg = new DataConnectionDialog(); DataSource.AddStandardDataSources(dlg); dlg.SelectedDataSource = DataSource.SqlDataSource; dlg.SelectedDataProvider = DataProvider.SqlDataProvider; if (ConfigurationManager.ConnectionStrings["ConStr"] != null) { dlg.ConnectionString = ConfigurationManager.ConnectionStrings["ConStr"].ConnectionString; } if (DataConnectionDialog.Show(dlg) == DialogResult.OK) { if (dlg.ConnectionString != null && dlg.ConnectionString != "") { conn = dlg.ConnectionString; Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None); ConnectionStringsSection csSection = config.ConnectionStrings; csSection.SectionInformation.ProtectSection("RsaProtectedConfigurationProvider"); csSection.SectionInformation.ForceSave = true; ConnectionStringSettings csSettings = new ConnectionStringSettings("ConStr",dlg.ConnectionString,"System.Data.SqlClient"); if (csSection.ConnectionStrings["ConStr"] != null) csSection.ConnectionStrings.Remove("ConStr"); csSection.ConnectionStrings.Add(csSettings); config.Save(ConfigurationSaveMode.Modified); } } return conn; } 我需要做什么呢? 解决方法
坏数据通常是由使用错误的密钥引起的.听起来你正在加密一台机器(你的开发机器上的.config文件?)并试图在另一台机器上解密.这不起作用,因为缺少解密密钥.
加密的配置部分应在运行应用程序的计算机上加密,以便使用适当的密钥. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |