C# C引用一个数据项目,用NHibernate和SQLite创建一个模型数据解决方案

C# C引用一个数据项目,用NHibernate和SQLite创建一个模型数据解决方案,c#,.net,sqlite,nhibernate,external,C#,.net,Sqlite,Nhibernate,External,我正在学习这个教程 我对此没有异议,到目前为止一切都很清楚 当我尝试引用另一个DLL时,出现了我的问题,我有一些大型的基础结构数据模式。这个DLL充满了要用Postgres DB填充的对象,当然,所有的属性都有virtual语句,因此可以延迟加载SQLite 我正在尝试做一个模拟项目,在最终的DB模式最终完成时进行测试,但是一旦我引用了我的外部DLL,我就会遇到问题 在编译时,我得到以下错误: 错误2找不到类型或命名空间名称“External” 缺少using指令或程序集 参考C:\Users\

我正在学习这个教程

我对此没有异议,到目前为止一切都很清楚

当我尝试引用另一个DLL时,出现了我的问题,我有一些大型的基础结构数据模式。这个DLL充满了要用Postgres DB填充的对象,当然,所有的属性都有virtual语句,因此可以延迟加载SQLite

我正在尝试做一个模拟项目,在最终的DB模式最终完成时进行测试,但是一旦我引用了我的外部DLL,我就会遇到问题

在编译时,我得到以下错误:

错误2找不到类型或命名空间名称“External” 缺少using指令或程序集 参考C:\Users\john\Downloads\NHibernate入门指南母版\NHibernate入门指南母版\NHibernate.GettingStarted\Model\IMedicineRepository.cs 1 7 NHibernate.GettingStarted

当我引用同一名称空间中的类时,该代码不会中断,如上面的教程所示:

using External.Infrastructure.Medicine;
using System;

namespace NHibernate.GettingStarted.Model
{
    public interface IMedicineRepository
    {
    /// <summary>
    /// Get person entity by id
    /// </summary>
    /// <param name="id">id</param>
    /// <returns>person</returns>
    Medicine Get(Guid id);

    /// <summary>
    /// Save person entity
    /// </summary>
    /// <param name="person">person</param>
    void Save(Medicine medicine);

    /// <summary>
    /// Update person entity
    /// </summary>
    /// <param name="person">person</param>
    void Update(Medicine medicine);

    /// <summary>
    /// Delete person entity
    /// </summary>
    /// <param name="person">person</param>
    void Delete(Medicine medicine);

    /// <summary>
    /// Row count person in db
    /// </summary>
    /// <returns>number of rows</returns>
    long RowCount();
}
}

我读了一点,似乎所有的项目都必须在同一个名称空间中,这在我尝试使用教程时是有意义的

两个项目之间唯一的区别是,我只是从另一个程序集中引用了一个对象

有人知道我该怎么修吗?或者我的方法错了

编辑1:


理解这个问题的另一个好问题是:如何从另一个程序集中引用数据对象?我想这就是我的问题所在。

好吧,在看得越来越深之后。。。我发现这就是问题所在:

一个项目是用4.5框架编译的,另一个是用4.0框架编译的

我将两者都切换到4.5,现在它可以工作了

希望这能帮助别人