我们可以在运行时修改web.config文件的授权部分吗?
答案 0 :(得分:1)
是的,您可以:http://msdn.microsoft.com/en-us/library/system.web.configuration.authorizationsection.aspx
“AuthorizationSection类提供了一种以编程方式访问和修改配置文件的授权部分的方法。”
我想这取决于你想要做什么。
答案 1 :(得分:0)
据我所知,配置文件不会在运行时修改,而是为您的可执行文件启动配置。那是他的功能。
顺便说一下: Editing app.config in execution time using the same App
答案 2 :(得分:0)
是的,您可以在运行时更改web.config文件...
但是通过更改配置服务器将重置会话
所以你当前登录的用户将面临登录问题
答案 3 :(得分:0)
是的,这就是我所做的,它100%有效:
%s,\(foo_\w\+\),\1_bar,g|%s,foo\.,foo_bar\.,g
这是web.config2:
var config = XDocument.Load(Server.MapPath("~/Web.config"));
var targetNode = config.Root.Element("location").Element("system.web").Element("authorization").Element("allow").Attribute("roles");
targetNode.Value = String.Join(",", Roles.GetAllRoles());
config.Save(Server.MapPath("~/Web.config"));