是否可以访问另一个库引用的库类,并且该类正在我的应用程序中使用?
简而言之->
Library A | Library B | App C
- Class A | - Class B | - Class C
| - references lib A | - references lib B
| | ( Can I access class A here without explicitly
| | referencing lib A since it is already referenced
| | through lib B )
答案 0 :(得分:0)
除非库B在外部提供了与references lib A
的接口,
否则,无法通过库B访问库A。
如果库B是C#库并且references lib A
是库B中的字段,那么您可以尝试使用反射。
答案 1 :(得分:0)
假设您正在使用NuGet,它将取决于软件包的创建方式和assemblies are referenced;
显式程序集引用允许将程序集的子集用于IntelliSense和编译,而所有程序集均可在运行时使用。
如果Library A
的程序集被正确包装,则您的项目可能已经将其包含为引用,并且using
语句就足以访问代码中的类。
在您的项目中包含对Library A
的PackageReference将使其更加明确,并且由于它被声明为Library B
的依赖项,因此它可能已经在packages
目录中可用。但是,如果您随后更新软件包引用,则可能存在版本问题。