zoukankan      html  css  js  c++  java
  • exePath must be specified when not running inside a stand alone exe Kevin

    自己封装了一个类库,本来是想方便自己重复使用的,代码如下:

     1 /// <summary>
     2         /// 写入配置文件的值
     3         /// </summary>
     4         /// <param name="key">key键</param>
     5         /// <param name="value">value值</param>
     6         /// <returns>写入成功返回true,否则返回false,有异常</returns>
     7         public static bool Write(string key, string value)
     8         {
     9             try
    10             {
    11                 Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
    12                 config.AppSettings.Settings[key].Value = value;
    13 
    14                 config.AppSettings.SectionInformation.ForceSave = true;
    15                 config.Save(ConfigurationSaveMode.Modified);
    16 
    17 
    18                 //debug模式中不会更改实际文件中的内容,release后更改
    19                 ConfigurationManager.RefreshSection("appSettings");
    20 
    21                 return true;
    22             }
    23             catch (Exception ex)
    24             {
    25                 return false;
    26             }
    27         }

    该方法的作用就是将值保存到配置文件中的AppSetting节点中。但不想今天在Web网站中使用时碰到了标题的问题。

    解决的方法是重写了一个针对web网站的方法:

    /// <summary>
            /// 写入Web配置文件的值
            /// </summary>
            /// <param name="key">key键</param>
            /// <param name="value">value值</param>
            /// <returns>写入成功返回true,否则返回false,有异常</returns>
            public static bool WriteWebConfig(string key, string value)
            {
                try
                {
                    Configuration config = WebConfigurationManager.OpenWebConfiguration("~");
                    config.AppSettings.Settings[key].Value = value;
    
                    config.AppSettings.SectionInformation.ForceSave = true;
                    config.Save(ConfigurationSaveMode.Modified);
    
    
                    //debug模式中不会更改实际文件中的内容,release后更改
                    ConfigurationManager.RefreshSection("appSettings");
    
                    return true;
                }
                catch (Exception ex)
                {
                    return false;
                }
            }

    搞定。 

    WebConfigurationManager类在System.Web.dll 中,添加一下引用即可。
  • 相关阅读:
    Moodle的安装和登陆(使用Https)
    Moodle 3.4中添加小组、大组、群
    【转】moodle中年级、班级、小组研讨
    函数式接口
    java实现数据库连接池
    转载---jboss简单使用
    转载---数据库优化方案
    转载---虚拟机类加载机制
    java中的hashcode
    父子类静态代码块,非静态代码块,有参,无参构造方法等的执行顺序问题
  • 原文地址:https://www.cnblogs.com/kfx2007/p/3001048.html
Copyright © 2011-2022 走看看