首页 > 编程语言 >C# 配置自定义的Config文件

C# 配置自定义的Config文件

时间:2022-11-14 12:00:17浏览次数:41  
标签:配置文件 自定义 C# Config Text 字符串 config 节点 string

一、前言 我在某个项目创建了一个config文件,想要对这个config文件的某个节点下添加连接字符串。

  于是乎,开启了百度、谷歌之旅......

 

二、实现

  1.这是我创建的config文件内容,我想要在connectionStrings里添加连接字符串

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
	<connectionStrings>
 	</connectionStrings>
</configuration>

  

  2.这是一个winform界面

  

 

  3.然后百度,发现很多都是对App.Config下的appSettings节点进行操作的,有点懵了,研究了一番,嘿,一样的,简单的很

   首先拿到文本框的内容,拼接成连接字符串

var connString = $"Data Source ={Servicetxt.Text};Initial Catalog={DataBasetxt.Text};User ID={LoginNametxt.Text};Password={Passwordtxt.Text}";

   

   然后再搞一个方法

public bool SetConfigKey(string conn)
        {
       //获取包含当前执行的代码的程序集 Assembly assembly = Assembly.GetExecutingAssembly(); try {
          //bin下面的配置文件 string path = string.Format("{0}.config", assembly.Location.Substring(0, assembly.Location.LastIndexOf(@"\") + 1) + @"App_Data\rdbs"); ExeConfigurationFileMap configFile = new ExeConfigurationFileMap() { ExeConfigFilename = path };
          //打开相关的配置文件 Configuration config = ConfigurationManager.OpenMappedExeConfiguration(configFile, ConfigurationUserLevel.None);
          //拼接连接字符串配置文件节中的单个命名连接字符串 ConnectionStringSettings connSettings = new("conn", conn, "System.Data.SqlClient"); //获取connectionStrings节点 ConnectionStringsSection connection = (ConnectionStringsSection)config.GetSection("connectionStrings"); //删除connectionString节点下的所有内容 connection.ConnectionStrings.Clear(); //向节点里添加内容 connection.ConnectionStrings.Add(connSettings);
          //保存修改的内容 config.Save(ConfigurationSaveMode.Modified); } catch { return false; } return true; }

  

  4.运行

    

     

    已经成功的加上一条了

     

 

三、总结

  很多东西还是不太清楚,不太熟练,遇到问题时,要有能独立解决问题的能力,尽量多思考,多动手。遇到不会的,百度谷歌,翻遍网络,总是会有答案的,山重水复疑无路,柳暗花明又一村。

  

标签:配置文件,自定义,C#,Config,Text,字符串,config,节点,string
From: https://www.cnblogs.com/WangJianqiu/p/16888577.html

相关文章

  • rocketMq springboot2接入配置
    rocketmq的接入配置。 引入jar包<dependency><groupId>org.apache.rocketmq</groupId><artifactId>rocketmq-spring-boot-starter</artifactId></dependen......
  • 深度讲解React Props
    一、props的介绍当React遇到的元素是用户自定义的组件,它会将JSX属性作为单个对象传递给该组件,这个对象称之为“props”。函数声明的组件,会接受一个props形参,获取属性传递......
  • docker 部署code-server
    1.创建一个存放配置的目录mkdir-p~/.config/code-server2.拉取最新codeserver镜像dockerpullcodercom/code-server:latest3.启动容器配置宿主机挂载点do......
  • 彻底搞懂React-hook链表构建原理
    写在前面的小结每一个hook函数都有对应的hook对象保存状态信息useContext是唯一一个不需要添加到hook链表的hook函数只有useEffect、useLayoutEffect以及us......
  • AC 自动机——trie 树与 KMP 算法的结合体
    默认所有字符串的下表从\(1\)开始。梗概与实现如果是单一的模式串和字符串进行匹配,KMP算法自然可以派上用场。但如果有多个模式串呢?对每个模式串都跑一遍KMP?如果有......
  • DTSE Tech Talk | 第10期:云会议带你入门音视频世界
    摘要:本期直播主题是《云会议带你入门音视频世界》,华为云媒体服务产品部资深专家金云飞,与开发者们交流华为云会议在实时音视频行业中的集成应用,帮助开发者更好的理解华为云......
  • 在ArchLinux中重新生成ssh host keys
    删除原有keysudorm/etc/ssh/ssh_host_*生成新keysudossh-keygen-tdsa-f/etc/ssh/ssh_host_dsa_keysudossh-keygen-trsa-f/etc/ssh/ssh_host_rsa_keys......
  • MACM1 VM安装Centos7ARM版
    ......
  • rocketMq 安装与配置
    下载rocketmq-all-4.7.1-bin-release.zip上传到服务器 /app/rocketmq,并且解压#mkdir-p/app/rocketmq#tar-zxvfrocketmq-all-4.7.1-bin-release.zip[root@lo......
  • 4.docker mgr(mysql8.0.27)多机多节点搭建
    1.环境准备(已关闭防火墙和selinux)1.1服务器列表 1.2修改3台服务器的hosts文件,否则会报错解析不到node1,原因参考(https://www.cnblogs.com/zhangdapangzo/......