Entity framework 在单独的 dll 中

Entity framework in separate dll

我有一个 class 库,我在其中使用了 entity framework

我添加了一个单元测试项目来测试 DAL dll :

[TestMethod]
public void TestConnection()
{
    try
    {
        ICrud<ajt_demande> dem = new Crud<ajt_demande>();
        List<ajt_demande> lst = (List<ajt_demande>)dem.GetAll();
        Console.WriteLine(lst.Count);
    }
    catch (Exception ex)
    {
        Console.WriteLine(ex.ToString());
        throw new AssertFailedException();
    }
}

我得到一个异常,表明没有找到连接字符串!!!

我需要知道:

  1. 这个异常的原因是什么?
  2. 解决此问题的更明智的方法是什么?

连接字符串取自正在执行的程序集(在您的例子中是 AjTransport.Test)。因此,您需要在那里定义连接字符串。有一些选项:

  1. 直接将连接字符串作为构造函数的一部分传递(如果可能)
  2. 将 app.config 添加到您的测试项目中,在那里定义连接字符串。