2009-07-27 22 views
3

我有一个ASP.NET Web应用程序,它有3个项目来处理应用程序的3个不同层(UI,BL和数据访问)。 UI项目的预编译目录将在解决方案中创建,并且文件将在那里可用。此文件夹将包含一个BIN目录,其中包含所需的DLL(DataAccessLayer项目的业务层项目的DLL和DLL)。这工作正常。无需我想使用相同的BL和DataAcess图层来运行多个用户界面(网站)。我想要网站叫做websiteA,WebSiteB,MyWEbSite1,ShyjusWeb等....我想为它们中的每一个创建虚拟目录。所以我创建了一个网站,并在那之下为上述网站创建了虚拟目录。我把index.asp(我的解决方案中的UI项目的)映射到一个虚拟目录的文件夹中,当试图访问时,我得到如下错误ASP.NET部署:无法访问站点虚拟目录中的Bin文件夹程序集

Parser Error 
Description: An error occurred during the parsing of a resource required to service this request. Please review the following specific parse error details and modify your source file appropriately. 

Parser Error Message: Could not load the assembly 'App_Web_lls0_qzf'. Make sure that it is compiled before accessing the page. 

Source Error: 


Line 1: <%@ page language="C#" autoeventwireup="true" inherits="index, App_Web_lls0_qzf" %> 
Line 2: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
Line 3: <html xmlns="http://www.w3.org/1999/xhtml"> 


Source File: /websiteA/index.aspx Line: 1 

看起来好像页面无法从BIN文件夹访问所需的DLL。有没有办法解决这个问题?我正在玩IIS 6.0。我的文件夹层次结构如下所示 根文件夹 - > Bin文件夹,各种UI相关文件&文件夹,现在转换为虚拟目录的文件夹(WebSiteA)。在WebSiteA内部,我有inde.aspx,它与根文件夹中可用的index.aspx相同。

我需要有相同的网站(复制只有一些CSS更改为每个网站)。如果我从我的根目录中复制Bin文件夹,并将其粘贴到每个虚拟目录文件夹以及index.aspx,它的working.But我不想有相同的BIN文件夹为每个sites.I想只有一个BIN,这应该是在根文件夹提前

回答

0

谢谢参考你的BL和DAL项目从创建

+0

如果我这样做,我需要从孤立文件(Visual Studio IDE)做到这一点如何在IIS上创建虚拟目录? – Shyju 2009-07-27 10:28:55

+0

你为什么想这样做?我认为一个网站应该(建立THEN部署),而不是(通过添加IIS虚拟目录一步建立和部署)。那是你想要做什么? – 2009-07-27 10:31:50

1

的网站项目,我认为你已经在糊里糊涂得到自己添加。 您提到的文件(App_Web_lls0_qzf)似乎是第一个指定UI/BL/DAL组合的编译DLL,我很不幸被您对文件夹结构的描述所困惑。

我不清楚你是否想要同一网站的多个COPIES或每个网站是不同的。

你有没有尝试过创建4个网站,并引用了常见的BL和DAL项目?

请记住,您的文件结构和IIS结构不必是相同的,即

  • C:\网站\ WEBSITE1
  • C:\网站\ WEBSITE2
  • C:\网站\ WEBSITE3
  • C:\网站\ website4

和IIS

  • Master网站
  • WEB1

  • WEB2

  • WEB3

  • WEB4

请记住继承! - 主网站中的DLL和引用将被继承到您的虚拟目录中。您也可以考虑为每个网站创建Web应用程序池。

相关问题