简体   繁体   中英

Web.Config, external file for system.serviceModel

Using VS2010

I have the following in my web.config (detail removed).

<system.serviceModel>
    <behaviors />
    <services />
    <serviceHostingEnvironment multipleSiteBindingsEnabled="true"/>
    <bindings />
    <client />
</system.serviceModel>

I would like to use attribute configSource the same as appSettings can use to get the detail of these elements from another config file.

I have tried to apply configSource attribute to either system.serviceModel or to each of the sub nodes. However, I get the invalid blue wavvy line saying:

The 'configSource' attribute is not allowed

I refer to the second answer (by Tom Brothers) in this question which demonstrates what I would like.
Can a web.config read from an external xml file?

Additional
Here is the configuration from that post. Has invalid blue wavvy lines.

<connectionStrings configSource="web\config\connectionStrings.config" /> 
<appSettings configSource="web\config\appSettings.config" /> 
<system.diagnostics configSource="web\config\diagnostics.config" /> 
<system.serviceModel> 
    <bindings configSource="web\config\serviceModelBindings.config" /> 
    <behaviors configSource="web\config\serviceModelBehaviors.config" /> 
    <services configSource="web\config\serviceModelServices.config" /> 
    <client configSource="web\config\serviceModelClient.config" /> 
</system.serviceModel> 

How can I use the configSource attibute in this case?

You cannot apply configSource= to <system.serviceModel> since that is a config section group - not a simple config section, and the configSource attribute is only available on simple configuration sections.

You should however absolutely be able to apply the configSource attribute to any of the nodes inside <system.serviceModel> - I do this all the time, in production systems - and it just works. Have you even really tried??

Or did you let yourself be scared off by Visual Studio... it might show you (and tell you) that configSource="...." is not allowed (by those wavy underlines) - but that's just a shortcoming in the Visual Studio editor - on the child nodes of <system.serviceModel> , it is allowed to have a configSource= attribute!

Can you show us (by editing your original question) what your eg serviceModelBehaviors.config looks like??

Also: is that file physically in the web\\config subdirectory of your web application??

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM