2008-12-24 82 views
1

我试图在另一个Web应用程序中安装一个应用程序。我有我的.aspx页面和一些我正在放入主应用程序的app_code文件夹中的代码。我已经为自己的连接字符串添加了自己的web.config文件,但我认为存在冲突。所以我的问题是两个参与者。首先,在另一个应用程序中安装应用程序的最佳方式是什么,即应该使用主应用程序app_code文件夹还是添加自己的应用程序,其次,是否会与两个web.config文件发生冲突。我的印象是这些文件从最具体的web.config文件中提取。看来我的安全存在问题,我无法访问我的文件。我归属这两个web.config文件,嵌套文件夹中的web.config

谢谢。

回答

1

如果嵌套应用有它的文件夹变成一个应用程序(它在IIS中属性单击鼠标右键,并在“应用程序”选项卡上,“创建”一个新的应用程序),你应该把代码在本地App_Code文件夹:

- \RootFolder  // Root of website 
|- \App_Code  // App_Code at root 
|- \NewApplication // Seperate application in IIS, has "web in a box" icon in IIS 
| |- \App_Code  // App_Code of new application 

如果嵌套应用程序是不是一个真正的应用程序(在IIS意义上的),那么你就需要有根的App_Code文件代码文件夹。

这也对你的web.config有影响 - 如果嵌套的应用程序是一个真正的应用程序,那么你将能够在你想要的级别有一个完整的web.config - 但是如果它不是一个IIS应用程序,那么在后续的web.configs中可以放置什么是有限制的 - 一些元素只能在应用程序根目录下的web.config中允许,并且不能被其他设置覆盖。

你看到的实际错误是什么?

+0

如果您使用的是WAP项目,该怎么办?没有app_code文件夹!你应该使用WAP,网站项目吸。 – PositiveGuy 2009-10-13 21:35:48

1

关于你的第一个问题,我宁愿让他们部署在不同的文件夹。第二,例如,如果您有一个默认网站内的网站,您将拥有两个web.config,但更具体的将覆盖默认网站中web.config的一些属性,但是那些不重写的将会在那里(即,HTTPHandlers,HTTPModules,该网站将尝试加载这些内容,因此您需要在HttpModules中添加remove标签来删除它们)。

希望这澄清你的问题