config中数据库连接connectionString用机器名网站数据无法访问

本文记录了一次因系统更新导致网站无法访问数据库的问题,并详细介绍了错误日志信息及解决方法,通过将连接信息从机器名改为IP地址或localhost,成功解决了问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

网站正常运行因为更新系统,突然无法访问数据库了,数据库运行正常,IIS也正常。

错入日志:

名称 "WIN-82A" 不能注册到 IP 地址 192.168.X.X 的界面上。 具有 IP 地址 172.16.X.X 的计算机不允许这个名称被此计算机占用。


处理方式:连接信息从机器名改为IP或localhost问题就解决了!!!


在C#控制台应用程序中,加密配置文件中的数据库连接字符串可以提高安全性,防止敏感信息泄露。你可以使用以下步骤来加密: 1. **使用`System.Configuration`命空间**:首先,在项目中引入`System.Configuration`命空间,它包含了用于管理应用程序配置文件的类。 2. **获取原始连接字符串**:在你的`App.config`或`web.config`中找到数据库连接字符串,并将其复制到一个变量里。 3. **使用`ProtectedConfigurationProvider`**:C#提供了一个为` ProtectedConfigurationProvider`的类,它可以加密存储在配置文件中的数据。你需要创建一个实例并使用它的`EncryptSection()`方法对连接字符串进行加密。 ```csharp using System.Security; using System.Configuration; // ... string connectionString = ConfigurationManager.ConnectionStrings["YourConnectionStringName"].ConnectionString; SecureString secureConnection = new SecureString(); foreach (char c in connectionString) { secureConnection.AppendChar(c); } byte[] encryptedBytes = ProtectedConfiguration.Protect(secureConnection); ``` 4. **将加密后的数据存储**:你可以选择将加密后的字节数组保存到新的配置节中,或者直接写入应用程序目录下的`machineKey.config`文件(如果存在),这个文件是用来存储机器密钥的。 5. **读取和解密**:当你需要在运行时访问加密的连接字符串时,使用`UnprotectSection()`方法解密它。 ```csharp byte[] decryptedBytes = ProtectedConfiguration.Unprotect(encryptedBytes); SecureString decryptedSecureString = new SecureString(decryptedBytes); string decryptedConnectionString = decryptedSecureString.ToUnmanagedString(); ``` 请注意,每次程序启动时,都需要有相应的机器密钥来解密数据,因此在部署前务必正确配置`machineKey.config`。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值