gpt4 book ai didi

c# - 返回或继承包含嵌套类的泛型

转载 作者:太空宇宙 更新时间:2023-11-03 16:50:11 24 4
gpt4 key购买 nike

在使用如下所示的类布局时,我注意到一些极其奇怪的行为:

// Contents of assembly A:
public class MyParentClass
{
public class NestedClass
{
}
}

// Contents of assembly B:
public class AnotherClass : List<MyParentClass.NestedClass>
{
}

我可以将程序集 A 添加为程序集 B 的依赖项。此示例将编译而不会出现任何错误消息,但是当涉及到加载程序集 B 作为单元测试的引用时,我将收到此错误是时候编译单元测试了:

Could not load file or assembly 'AssemblyB, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies. The system cannot find the file specified.

此代码生成的程序集确实有效,我可以使用 Redgate Reflector 运行生成的 DLL 并按预期查看我的代码,但单元测试拒绝加载它。

我几乎肯定这个问题与我正在调用另一个程序集中的嵌套类这一事实有关,无论如何我可能最终都会重构这个设计,但我真的很想知道为什么会这样没有按预期工作。如果以这种方式使用类时出现问题,我希望编译器抛出异常。

感谢您的宝贵时间。

最佳答案

是否为该引用启用了“复制本地”?我假设您的测试项目测试程序集 B 没有程序集 A 的副本。在引用上将“复制本地”设置为 true 应该复制程序集,以便在编译(并最终运行)测试时可以正确找到它们.

关于c# - 返回或继承包含嵌套类的泛型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4254830/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com