首页 > 编程语言 >C# WinForm操作配置文件AppSettings获取、增加、删除、修改

C# WinForm操作配置文件AppSettings获取、增加、删除、修改

时间:2023-04-09 19:13:13浏览次数:38  
标签:Key 配置文件 ConfigurationManager C# AppSettings cfa key string

在C# WinForm开发中,如果想要修改AppSettings中的值,发现用下面这个代码并没有成功。

ConfigurationManager.AppSettings.Set(key, value);//修改值,但是没有成功

下面提供可以用的获取、增加、删除、修改appSettings的方法。

public class WinConfigHelper
{
    /// <summary>
    /// 根据Key取Value值
    /// </summary>
    /// <param name="key"></param>
    public static string GetValue(string key)
    {
        return ConfigurationManager.AppSettings[key].ToString().Trim();
    }

    /// <summary>
    /// 根据Key修改Value
    /// </summary>
    /// <param name="key">要修改的Key</param>
    /// <param name="value">要修改为的值</param>
    public static void SetValue(string key, string value)
    {
        Configuration cfa = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
        cfa.AppSettings.Settings[key].Value=value;
        cfa.Save();
        ConfigurationManager.RefreshSection("appSettings");
    }

    /// <summary>
    /// 添加新的Key ,Value键值对
    /// </summary>
    /// <param name="key">Key</param>
    /// <param name="value">Value</param>
    public static void Add(string key, string value)
    {
        Configuration cfa = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
        cfa.AppSettings.Settings.Add(key, value);
        cfa.Save();
        ConfigurationManager.RefreshSection("appSettings");
    }

    /// <summary>
    /// 根据Key删除项
    /// </summary>
    /// <param name="key">Key</param>
    public static void Remove(string key)
    {
        Configuration cfa = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
        cfa.AppSettings.Settings.Remove(key);
        cfa.Save();
        ConfigurationManager.RefreshSection("appSettings");
    }
}

 

标签:Key,配置文件,ConfigurationManager,C#,AppSettings,cfa,key,string
From: https://www.cnblogs.com/rwen/p/17300825.html

相关文章

  • SPECCPU2006的学习与使用
    SPECCPU2006的学习与使用摘要这个周末问题不是很多,陪孩子写作业时顺便研究了下SPEC2006虽然比较落后了.但是总比没有要强一些.其实集团有资源,但是联系不到人,只能自己学习和研究了.找了很多华为博客上面的知识点.但是依旧有很多问题想着先总结这,希望有时间慢慢完......
  • Mac版 下载安装FFmpeg(转)
    转自:Mac版下载安装FFmpeg法一,直接使用brew安装ffmpegbrewinstallffmpeg如果发现下载太慢,可以参考macOS】homebrew安装和解决brew安装速度慢的问题加快下载速度。方式二:官网下载安装(1)进入官网DownloadFFmpeg选择“mac”,点击下面的“macOS-64-bit”进入下载页面(2)......
  • 【Voyage】GDOI 2023 旅游记 || ECHO.
    \(\color{#FFFFFF}{那是什么样的旅途呢}\)\(\color{#FFFFFF}{真的会害怕很多东西呢。想想害怕的其实不止这样一件事,便产生了“其实都一样没关系的,都应该踏过去的”这样的想法}\)\(\color{#FFFFFF}{——3月29日}\)注:这个真的是旅游记。作个人纪念。会配上一些图片完整相册等......
  • Centos 7 pip3安装 supervisor
    1、安装supervisorpip3installsupervisor2、新建文件夹mkdir/etc/supervisord.d3、生成supervisor.conf配置echo_supervisord_conf>/etc/supervisord.conf4、启动supervisor/usr/local/python3/bin/supervisord-c/etc/supervisord.conf5、例子:配置supervisor管理n......
  • .NET Core MongoDB数据仓储和工作单元模式封装
    前言     上一章我们把系统所需要的MongoDB集合设计好了,这一章我们的主要任务是使用.NETCore应用程序连接MongoDB并且封装MongoDB数据仓储和工作单元模式,因为本章内容涵盖的有点多关于仓储和工作单元的使用就放到下一章节中讲解了。仓储模式(Repository )带来的好处是一......
  • golang 编译碰到问题 Package python-2.7 was not found in the pkg-config search pa
    golang运行单测或者编译程序时提示需要配置PKG_CONFIG_PATH环境变量,原因是在程序里使用了go-python包,要求运行环境有python2.7,并设置PKG_CONFIG_PATH环境变量,解决方案如下:#pkg-config--cflags--python-2.7Packagepython-2.7wasnotfoundinthepkg-configsear......
  • WebKit三件套(2):WebKit之JavaScriptCore/V8
    WebKit作为一个浏览器引擎,其中Javascript实现包括JavaScriptCore和V8,为了能更全面的了解WebKit,我们需要深入的了解Javascript实现的基本原理、其在WebKit中的作用以及与其他部分之间的交互,同时与Gecko中的Javacript实现作初步的对比。让我们开始了解WebKit之Javascript实现JavaScr......
  • c++Primer 14 重载运算符与类型转换
    除了重载的函数调用运算符operator()之外,其他重载运算符不能含有默认实参。      泛型算法中调用的几元谓词是看函数对象的调用运算符的参数个数。而不是构造函数的参数个数。    转换构造函数只能有一个参数,如果他有多个参数,就无法判断是将哪个参数转......
  • C++数组
    数组C++中的数组是一种特殊类型的变量,它可以存储一组具有相同数据类型的元素,这些元素在内存中是按照一定的顺序排列的。下面是C++数组的一些特点:数组的元素类型必须相同。例如,一个int类型的数组中只能存储int类型的元素。数组的大小是固定的。一旦数组被创建,它的大小就不能再......
  • MySQL Cursor 的定义和使用
    前言最近项目中需要迁移数据,对旧表A的每一行记录处理后插入新表B。Google一下,发现MySQLCursor适合这种场景,上篇文章介绍了handler,那么本篇就一起看下Cursor是什么吧!本文基于MySQL8.0定义我们来看看ChatGPT是怎么理解MySQLCursor的吧:我:MySQLCursor是什么......