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();
}
}
我得到一个异常,表明没有找到连接字符串!!!
我需要知道:
- 这个异常的原因是什么?
- 解决此问题的更明智的方法是什么?
连接字符串取自正在执行的程序集(在您的例子中是 AjTransport.Test
)。因此,您需要在那里定义连接字符串。有一些选项:
- 直接将连接字符串作为构造函数的一部分传递(如果可能)
- 将 app.config 添加到您的测试项目中,在那里定义连接字符串。
我有一个 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();
}
}
我得到一个异常,表明没有找到连接字符串!!!
我需要知道:
- 这个异常的原因是什么?
- 解决此问题的更明智的方法是什么?
连接字符串取自正在执行的程序集(在您的例子中是 AjTransport.Test
)。因此,您需要在那里定义连接字符串。有一些选项:
- 直接将连接字符串作为构造函数的一部分传递(如果可能)
- 将 app.config 添加到您的测试项目中,在那里定义连接字符串。