在我的解决方案中,我有三个项目(Web,业务和数据)都针对.net 4.5.1。 Web引用业务和业务参考数据。
我需要在这三个项目中执行一个初始化方法,具体取决于应用程序的启动。所以我在所有项目中都创建了一个Boot类。
Business中的Boot类继承自Web中的Data类和Boot类继承自Business中的Boot类
所以我有这段代码:
在数据项目中:
namespace Data
{
public class Boot
{
public Boot()
{
// init execution
}
}
}
在商业项目中:
namespace Business
{
public class Boot : Data.Boot
{
public Boot() : base()
{
// init execution
}
}
}
在Web项目中:
namespace Web
{
public class Boot : Business.Boot
{
public Boot() : base()
{
// init execution
}
}
}
当我编译时,我的Web项目中的Boot类出错:
“Data.Boot”类型在未引用的程序集中定义。您必须添加对程序集'Data,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = null'的引用
我不明白为什么我的Web项目需要引用我的Data项目..它从不直接使用Data.Boot ..
答案 0 :(得分:2)
您必须在Web和业务项目中添加对数据项目的引用。在您的情况下,您的网络层依赖于业务层和数据层。
总结:
答案 1 :(得分:0)
您必须检查Business项目中是否引用了数据DLL,如果是,则必须清理解决方案并重建它