C# 无法为单元测试引用目标web app项目

C# 无法为单元测试引用目标web app项目,c#,asp.net,unit-testing,visual-studio-2015,owin-middleware,C#,Asp.net,Unit Testing,Visual Studio 2015,Owin Middleware,我使用空的web应用程序模板在VS2015中创建了一个.NET核心web应用程序。它以完整的框架4.6.1为目标。这是一个中间件,我正在使用其他一些web应用程序。我按照说明操作,当我将中间件与另一个web应用程序集成时,它就可以工作了 现在我想为它编写一些单元测试,所以我创建了一个针对同一框架的单元测试项目(使用测试项目模板)。然后我引用了一个项目,该项目包含我想要进行单元测试的中间件类。但是,当我尝试在单元测试方法中使用中间件类时,VS会抱怨说它找不到它,即使我使用完全限定的名称空间键入。事

我使用空的web应用程序模板在VS2015中创建了一个.NET核心web应用程序。它以完整的框架4.6.1为目标。这是一个中间件,我正在使用其他一些web应用程序。我按照说明操作,当我将中间件与另一个web应用程序集成时,它就可以工作了

现在我想为它编写一些单元测试,所以我创建了一个针对同一框架的单元测试项目(使用测试项目模板)。然后我引用了一个项目,该项目包含我想要进行单元测试的中间件类。但是,当我尝试在单元测试方法中使用中间件类时,VS会抱怨说它找不到它,即使我使用完全限定的名称空间键入。事实上,Intellisense没有在目标项目中引入任何类。如果我尝试构建单元测试项目,它将返回一个错误:
找不到类型或命名空间名称“xxxxMiddleware”(您是否缺少using指令或程序集引用?
)。当我进入测试单元的引用并双击作为单元测试目标的项目时,会弹出消息
,因为项目不可用或尚未构建,因此无法在对象浏览器中查看该项目。请确保项目可用且已建成。

我做错了什么

更新

如果我为目标项目引用
.exe
,它将设法解析我的中间件类。非常奇怪!在我得到一个更好的答案之前,我可能必须暂时解决这个问题

更新2


我说得太快了。添加
.exe
可以编译单元测试项目。但是如果我运行测试,我会得到一个错误,说
System.BadImageFormatException:无法加载文件或程序集“{assembly for the target of my test}”或它的一个依赖项。试图加载格式不正确的程序。
。真是一场噩梦。

首先构建主项目,然后尝试添加对的引用it@greenshade,我不确定你的意思,但我已经构建了我想要针对单元测试的项目。实际上,我可以从我想使用它的其他web应用程序中引用它。两个项目中的.NET framework版本匹配吗?一个是针对完整framework 4.6.1的.NET核心web应用程序。单元测试项目的目标也是4.6.1首先构建主项目,然后尝试添加对主项目的引用it@greenshade,我不确定你的意思,但我已经构建了我想要针对单元测试的项目。实际上,我可以从我想使用它的其他web应用程序中引用它。两个项目中的.NET framework版本匹配吗?一个是针对完整framework 4.6.1的.NET核心web应用程序。单元测试项目也以4.6.1为目标