Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/visual-studio-2010/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在内存中操作web.config_C#_Visual Studio 2010_.net 4.0_Web Config_Webconfigurationmanager - Fatal编程技术网

C# 在内存中操作web.config

C# 在内存中操作web.config,c#,visual-studio-2010,.net-4.0,web-config,webconfigurationmanager,C#,Visual Studio 2010,.net 4.0,Web Config,Webconfigurationmanager,我在文本框中打开了一个web.config文件,并希望对其进行操作。例如,允许用户更改DBConn字符串或其他内容。在尝试更改此设置的阶段,配置文本可能作为物理文件存在,也可能不作为物理文件存在。是否可以在内存中使用WebConfiguration Manager或类似工具;大概是这样的: string myWebConfig = LoadWebConfigHere(); var config = WebConfigurationManager.OpenWebConfiguration(myW

我在文本框中打开了一个web.config文件,并希望对其进行操作。例如,允许用户更改DBConn字符串或其他内容。在尝试更改此设置的阶段,配置文本可能作为物理文件存在,也可能不作为物理文件存在。是否可以在内存中使用WebConfiguration Manager或类似工具;大概是这样的:

string myWebConfig = LoadWebConfigHere();

var config = WebConfigurationManager.OpenWebConfiguration(myWebConfig);

OpenWebConfiguration仅接受路径。我真的不想保存它并重新加载它以获得此功能。

这是不可能的,web.config只在每个请求中加载一次,更改无法“设置”;对文件的任何更改只会在页面刷新/重新加载后生效


因此,无论这是一个现有文件,还是通过您自己的逻辑编译的文件,以上都是通过将其加载到上下文中来使用它的唯一方法。

无法通过注释回答您:)


对于桌面应用程序,您最好使用外部配置文件或app.config。

此处的类似帖子:这是一个类似的问题,但只涉及在文件中管理对象。此外,大多数答案(以及我在别处找到的信息)都涉及到对当前站点的web.config的操作。我想做的是在桌面应用程序中创建并操纵web.config。对不起,我可能误导了您。我正在为网站创建web.config。然而,这样做的程序是一个桌面应用程序。这就是应用程序的目的-创建web.config.web.config文件是一个简单的xml文件。所以,我认为很容易创建简单的应用程序来修改这个xml。