Net Core:从集成测试中查找应用程序组装位置

我们有一个 API 真实应用程序,它运行以下代码来获取程序集目录。

Assembly.GetEntryAssembly().Location

Result:
C:\\OriginalApplicationAPI\\bin\\Debug\\netcoreapp2.2

现在我们正在运行一个 Integration Xunit 项目,该项目正在运行原始项目中的启动、应用程序设置等。

从集成测试项目渲染运行此代码,

C:\\Users\\..\\.nuget\\packages\\microsoft.testplatform.testhost\\15.9.0\\lib\\netstandard1.5"

如何从测试项目引用 OriginalApplicationAPI 程序集位置?是通过命名空间还是项目引用?

谢谢,


元芳怎么了
浏览 79回答 1
1回答

素胚勾勒不出你

您需要知道程序集中的类型。假设App.MyClass是在程序集中定义的。您可以使用反射来获取包含该类型的程序集的位置:Assembly.GetAssembly(typeof(App.MyClass)).Location.您无法使用命名空间来执行此操作,因为命名空间可以跨多个程序集存在。或者利用Assembly.GetExecutingAssembly().Location
打开App,查看更多内容
随时随地看视频慕课网APP