项目: 我的应用分两个部分:前端网站,后台管理程序
目的: 想将前台,后台,共用三个部分分3个项目单独作为独立互不影响的系统编译和发布,例如,将前台和后台都作为独立的project来开发,共用的控件,dll也作为独立的一个项目开发,以便前后台两个系统中,共享一些组件,例如可以做成一些公用的componet,供前后台两个project调用。
问题: 如何分出中间这个公用的项目呢? 如果是纯Class的C#项目,做个dll然后让前后台的程序项目参照就可以了。 可是,这个中间公用的部分,还包括user control控件,也就是有.ascx的文件。当我用VS.NET同时打开三个项目进行开发,中间公用项目中的用户控件ascx文件就无法被另外的两个项目引用,报"不能跨越不同的"application的错误.另外,公用部分,比如一些/Image文件,一些include的css文件等等,需要前后台共享的,这些文件夹我也不想重复,如何在项目之间共享呢? 但我也没法超越 /根目录去调用这些文件.请高手指点一下,如何划分和调用这个公用部分,以达到我的目的呢?
目的: 想将前台,后台,共用三个部分分3个项目单独作为独立互不影响的系统编译和发布,例如,将前台和后台都作为独立的project来开发,共用的控件,dll也作为独立的一个项目开发,以便前后台两个系统中,共享一些组件,例如可以做成一些公用的componet,供前后台两个project调用。
问题: 如何分出中间这个公用的项目呢? 如果是纯Class的C#项目,做个dll然后让前后台的程序项目参照就可以了。 可是,这个中间公用的部分,还包括user control控件,也就是有.ascx的文件。当我用VS.NET同时打开三个项目进行开发,中间公用项目中的用户控件ascx文件就无法被另外的两个项目引用,报"不能跨越不同的"application的错误.另外,公用部分,比如一些/Image文件,一些include的css文件等等,需要前后台共享的,这些文件夹我也不想重复,如何在项目之间共享呢? 但我也没法超越 /根目录去调用这些文件.请高手指点一下,如何划分和调用这个公用部分,以达到我的目的呢?
加入我们团队吧
让高手和高手在一起飞得更高一点。让新手帮新手进步更快一点。
--解决方案sln文件
--数据访问层(独立项目)
--业务对象层(独立项目)
--业务逻辑层(独立项目)
--项目引用的外部dll文件专用文件夹(独立项目,不编译)
--Web主项目(独立Web项目)
--web.config
--模块1(独立Web项目)
--模块2(独立Web项目)
--模块3(独立web项目)
--更多web模块...
--共享模块(用户控件等,设不设为独立项目都没关系)
--图片(子文件夹)
--脚本及样式表等(子文件夹)
--...其它
在Web主项目中添加对所有其它子模块项目的引用,这样对应的模块编译后生成的dll文件就会自动被复制到主项目下的bin文件夹中,无需手工复制,任何web项目中都可以引用主项目下的用户控件(因为该模块本身就是主项目下的一个子文件夹而已,是否是独立的项目和他们的目录结构毫无关系),将Web主项目设为启动项目,每次从Web主项目启动即可。
只要脑筋能转一下弯,其实很多问题都不难解决的!=====================
www.webdiyer.com
--web.config
--模块1(独立Web项目)
--模块2(独立Web项目)
--模块3(独立web项目)
--更多web模块...
这里的模块目录是如何加进去的啊?我没有用过VS2005,我用的VS。net 2003 1.版, 是否是什么新的功能呢?再次感谢!
-------------------------------------------------
怎么那么像大腕中的台词?
赞同webdiyer的方法。
虚拟目录都是事先设置好的。
--web.config
--模块1(独立Web项目)
--模块2(独立Web项目)
--模块3(独立web项目)
--更多web模块...
--共享模块(用户控件等,设不设为独立项目都没关系)
--图片(子文件夹)我只能设为以下的目录结构,每个目录单独立项目 --模块1(独立Web项目1,Test1.aspx)
--模块2(独立Web项目2)
--Web主项目(独立Web项目)
--web.config
--图片(子文件夹)
--Test.aspx
--共享模块(用户控件control1.ascx 等)
我在Test.aspx中可以引用control1.ascx,但Test1.aspx中引用control1.ascx控件,就报错:Parser Error Message: The virtual path '/共享模块/control1.ascx' maps to another application, which is not allowed.大侠们还是指点一下菜鸟吧.
Parser Error Message: The virtual path '/模块1/control1.ascx' maps to another application, which is not allowed.
Configuration Error
Description: An error occurred during the processing of a configuration file required to service this request. Please review the specific error details below and modify your configuration file appropriately. Parser Error Message: It is an error to use a section registered as allowDefinition='MachineToApplication' beyond application level. This error can be caused by a virtual directory not being configured as an application in IIS.Source Error:
Line 44: by Microsoft that offers a single logon and core profile services for member sites.
Line 45: -->
Line 46: <authentication mode="Windows" />
Line 47:
Line 48: <!-- AUTHORIZATION 我将子目录的web.config删除,就正常。但是,如果子模块项目需要用web.config文件来设置数据连接等设置,如何办呢? 是共用主项目的web.config文件吗?关于分层目录的web.config文件的设置,我另起一贴提问,加100分给出。
www.webdiyer.com