I hate IIS today
I am trying to execute the following piece of code:
Microsoft.Web.Administration.WebConfigurationManager.GetSection("system.webServer/httpHandlers");
Of course, this fails with a completely bizarre exception.
For some reason, I have the feeling it is not supposed to do that. Trying to explicitly pass the path where web.config lies also fails. When I finally made it use the correct path, it still gave the same error.
Urgh!
Comments
That should be system.webServer/handlers for IIS7 or system.web/httpHandlers for IIS6.
IIS7
So you are trying to read a non-standard section (or misspelled, but IIS cannot know that) that's not declared in configSections, and you then get upset because IIS tells you so, in plain english even? :-)
Try this:
WebConfigurationManager.GetSection("system.webServer/handlers");
For backward compatibility, you should change to "Classic" ASP.NET integration mode... or keep it "Integrated" and change the config file (system.web/httpHandlers -> system.webServer/handlers)
See http://learn.iis.net/page.aspx/243/aspnet-integration-with-iis7/
C-J Berg,
Um, no, it is a standard section, and notice what I am trying to do:
_Microsoft.Web.Administration.WebConfigurationManager_, this is using the IIS7 API, and I am trying to read the IIS 7 data.
That is not what I want, I want to read the data from the IIS7 data, in integrated mode.
And I am using system.webServer/handlers, but that is not readable, unfortunately.
Your code and the error message say: "system.webServer/httpHandlers"
Damn!
You are correct.
Thanks!
What I meant was that it's not a standard section in IIS7; you used the standard name for IIS6 (hence the "misspelled").
Anyhow, if you want to manipulate the handlers section, Microsoft provides an assembly for that purpose: Microsoft.Web.Administration.dll (found in %SystemRoot%\System32\InetSrv). Its ServerManager lets you read the app's host config, and you can also update and save it. (It can also be used to control any other aspect of IIS7, so you no longer need to use WMI/ADSI to configure sites.)
Comment preview