在 .NET 和 C#(我来自Java环境)中,我是一个新手,对此我有以下疑问。
在我的解决方案中,我有一个.NET项目,它使用 ADO.NET 充当DAO与我的SQL Server数据库进行交互。该项目称为 SqlEngine ,并具有以下属性:
Target Framework: .NET 4.5
Output Type: Class Library
然后在同一解决方案中,我创建了一个新的测试项目,以使用 NUnit (版本:3.10.1)执行集成测试。该项目名为 TestProject ,并具有以下属性:
Target Framework: .NET 4.5
Output Type: Class Library
在这个测试项目中,我有一个简单的NUnit测试类:
namespace Tests
{
public class Tests
{
[SetUp]
public void Setup()
{
}
[Test]
public void Test1()
{
Assert.Pass("PASSED");
}
[Test]
public void GetIndirizzoProtocollo_XXX_YYY_ReturnSingleValue()
{
DBConnection dbConfig = new DBConnection();
dbConfig.Tenant = "IWG";
List<string> urlList = IndirizziProtocolliSQL.GetListaIndirizziSiti(dbConfig);
Assert.Pass("OK");
}
}
}
问题是在尝试执行此行时调试此方法(其中 IndirizziProtocolliSQL 是我的 SqlEngine 项目中的类。我将此项目添加为对我的引用 TestProject 项目):
List<string> urlList = IndirizziProtocolliSQL.GetListaIndirizziSiti(dbConfig);
我得到此异常:
Exception thrown: 'System.BadImageFormatException' in SqlEngine.dll
An exception of type 'System.BadImageFormatException' occurred in ArxeiaSqlEngine.dll but was not handled in user code
Could not load file or assembly 'ChilkatDotNet45, Version=9.5.0.55, Culture=neutral, PublicKeyToken=eb5fc1fc52ef09bd' or one of its dependencies. An attempt was made to load a program with an incorrect format.