I have my website and exchange website running on the same web server. Exchange OWA is an application off of the root. It has its own web.config etc. Also, active synch has its own app.
I updated my root website and added a page with Infragistics controls. After publishing to my root site, the new pages worked fine, but every other page errored out saying that they could not find the Infragistics DLL's.
1) I put the Infragistics DLL's in the root's BIN directory. After copying them into the exchange directory, it started to work. Why would they need to be in the other directories BIN's? They arent using the controls.
2) After removing these lines from my Web.Config (off the root) all the problems went away and the new pages off the root still work.
<add assembly="Infragistics35.WebUI.UltraWebGrid.v8.3, Version=8.3.20083.1009, Culture=neutral, PublicKeyToken=7DD5C3163F2CD0CB"/><add assembly="Infragistics35.WebUI.Shared.v8.3, Version=8.3.20083.1009, Culture=neutral, PublicKeyToken=7DD5C3163F2CD0CB"/><add assembly="Infragistics35.WebUI.WebDateChooser.v8.3, Version=8.3.20083.1009, Culture=neutral, PublicKeyToken=7DD5C3163F2CD0CB"/><add assembly="Infragistics35.WebUI.WebDataInput.v8.3, Version=8.3.20083.1009, Culture=neutral, PublicKeyToken=7DD5C3163F2CD0CB"/>
Can someone please explain to me what's going on?
Thanks,Justin
Excellent knowledge. Thank you!
Justin,
web.config files inherit from parent folders. This is a great feature most of the time, but it sounds like you've found an example of when it can become a headache. Since you're adding the assembly reference entries in the root level config, the exchange config will inherit those resources. There's one problem, the sub applications don't automatically inherit the bin directory of the parent folder.
You can resolve this by adding the assemblies to the sub directory applicatoin's bin like you initially did, or you can use the <remove> tag in the in the assemblies section of your sub directory application. Basically, it's the same as the <add> entries above, but replace add with remove. That will remove those references which are being automatically inherited from your top level web.config.