运行时修改Web.config中的元素值

2016-01-29 12:54 2 1 收藏

运行时修改Web.config中的元素值,运行时修改Web.config中的元素值

【 tulaoshi.com - ASP.NET 】


大家都知道Asp.Net提供了一个WebApplication的配置文件web.config,让我们可以很方便地设置Web应用程序,另外还可以在appSettings节中增加一些我们常要使用的单元,如数据库连接串等,利用System.Configuration.ConfigurationSetting类我们可以很容易读取这些单元的值,但是要改变这些值就需要一些技巧了,下面我就来告诉大家如何在运行时利用System.Management中的类去改变这些单元的值。
现假设您有一个WebApplication名叫MyWebApp,虚拟路径为:http://localhost/MyWebApp,目录路径为:c:inetpubwwwrootMyWebApp,其中配置文件web.config中的appSettings设置如下:





创建一个新的Console应用程序加入以下代码:
using System;
using System.Management;
namespace ConsoleApplication1
{
class Class1
{
[STAThread]
static void Main(string[] args)
{
ManagementObject appSet= new ManagementObject("rootNetFrameworkV1:appSettings.Directive="add",key="test",Selector="file://C:/Inetpub/wwwroot/MyWebApp/web.config"");
Console.WriteLine(string.Format("Old value:{0}",appSet["value"]));

appSet.SetPropertyValue("value","new value was set ok!");
appSet.Put();
Console.WriteLine("New value setted ok!"); Console.Read(); } }}编译并运行,然后查看MyWebApp/web.config是否已被成功修改!!!:)

来源:https://www.tulaoshi.com/n/20160129/1488011.html

延伸阅读
在开发软件时,有时可能需要使软件在运行时不让别人从控制面板中修改修改系统的日期和时间,实现此功能的具体思路是:在软件运行是自己建立一个时钟,如果发现系统时间被修改,再用自己的时钟将系统时间改回来就可以了,VB中有一个控件叫SysInfo,可以用它的TimeChanged事件来监测系统时间是否已修改,请看下面的例子程序: 1、建立一个标准E...
反射类所使用的设计模式 System.Reflection 类中最常用的方法都使用统一的模式。Module、Type 和 MemberInfo 类的成员使用下表中所示的设计模式。成员签名说明MyInstance[] FindXxx(filter, filterCriteria)查找并返回经过筛选的类型列表,或者在当前类型没有实现任何匹配筛选器的类型的情况下返回空数组。 例如:Type.FindInterfacesMyInstanc...
访问自定义属性 当属性与程序元素相关联后,可以使用反射来查询它们是否存在以及它们的值。用于查询属性的主要反射方法包含在 System.Reflection.MemberInfo.GetCustomAttributes 和 System.Reflection.Assembly.GetCustomAttributes 中。 自定义属性的可访问性根据附加该属性的程序集来进行检查。这相当于检查附加自定义属性的程序集中的类型...
  如果我们把数据库连接信息也就是数据库连接字符串写在web.config里,不但加强了程序的安全,同时也极大的方便了程序的修改。    在web.config文件里添加关键字key是通过<appSettings标记来实现的,但是appSettings标记通常放在<system.web.....</system.web标记外面。例: <configration     &l...
飞信登录报C++运行时错误 故障现象: 登录时出现报错 原因分析: 原来安装过飞信,系统当中有之前的飞信文件存在。 解决方案: 在我的文档那个文件夹里,把那个叫fetion的文件夹删掉就可以了。

经验教程

197

收藏

61
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部