设置项目后,bin文件夹中有一些.config文件。我想让它们成为非人类可读的格式。
1.我知道我可以使用诸如asp net_ reg i i s -p e ...
之类的命令,但该项目是一个Win Form项目,在我的配置文件中没有像Web.config这样的部分。我的配置文件格式如下:
<...>
<add key="..." value="...." />
<add key="..." value="..." />
</...>
那么,是否有一些简单的方法可以使用C#将bin文件夹中的配置文件转换为非人类可读的格式?
答案 0 :(得分:1)
您有两种选择..如果您对保护某些特殊参数感兴趣,例如密码,您只需加密它,并且只有加密值。如果您真的希望保护整个事物,可以使用SectionInformation.ProtectSection。
MSDN示例代码:
static public void ProtectSection()
{
// Get the current configuration file.
System.Configuration.Configuration config =
ConfigurationManager.OpenExeConfiguration(
ConfigurationUserLevel.None);
// Get the section.
UrlsSection section =
(UrlsSection)config.GetSection("MyUrls");
// Protect (encrypt)the section.
section.SectionInformation.ProtectSection(
"RsaProtectedConfigurationProvider");
// Save the encrypted section.
section.SectionInformation.ForceSave = true;
config.Save(ConfigurationSaveMode.Full);
// Display decrypted configuration
// section. Note, the system
// uses the Rsa provider to decrypt
// the section transparently.
string sectionXml =
section.SectionInformation.GetRawXml();
Console.WriteLine("Decrypted section:");
Console.WriteLine(sectionXml);
}