2010-03-31 66 views
1

我正在尝试为使用网站而不是Web应用程序项目的现有网站创建一组WCF Web服务。我想创建一个DLL,将其放入Bin文件夹,而不是将所有代码写入App_Code目录中。理想情况下,我想创建一个项目并从网站中引用它,但我遇到了困难的情况。如何解决Visual Studio Web Project中的循环引用问题?

该DLL将需要引用位于网站的bin文件夹内的配置和其他DLL,从而引起循环引用。我如何解决这个问题?

回答

1

为什么它是一个循环引用,如果你引用外部DLL?你仍然可以引用配置,而不用引用你编译的网站的dll。此外,您必须从Temp ASP .Net文件中获取它,因为网站是根据请求编译的。

如果你真的从你的网站上引用了一些代码,为什么不把它放在你新建的库中,并引用你网站上的代码?

+0

只是为了澄清,我创建的服务将在网站文件夹中运行。它需要访问当前的数据库,用户等。如果我把它放在外部项目中,我将不得不痛苦地重新创建已经存在的环境。我想我的问题是如何避免在App_Code中编写我所有的代码? – 2010-03-31 23:53:42

+0

我没有看到问题。您仍然可以使用来自外部DLL的相同配置,资源等,只要它位于与您的网站相同的AppDomain内。 – 2010-04-01 02:58:38

+0

我的脑部放屁(BFOMP)!现在你已经完全理解了,我正在考虑从dll项目引用整个网站项目,而不是单个DLL。我知道这一点,但我猜Web站点项目在概念上都是短暂的。这与Web项目不像正常VS项目一样运作的事实有关。 Web项目应该被禁止并且只能通过处方获得。 – 2010-04-01 03:45:08

0

循环引用永远不可能从soure构建。我要么折叠这两个项目,要么使用反射来打破循环依赖。

0

将导致循环引用的页面复制到不同的文件夹并编译应用程序。我已通过此修复解决了我的问题。