C# 在项目之间共享对象

标签 c# .net

我有一个包含 2 个项目的解决方案...

项目 A 有以下内容 A - 引用第三方 DLL(其中有一个名为“响应”的类) B - 使用上述 DLL 并从名为“GetResponse”的方法返回“Response”对象的类

现在项目 B 像这样从项目 A 调用类......

Response r = ProjectA.Class.GetResponse();

这将返回错误,因为我的项目 B 中没有“第三方”引用。

我宁愿不将我的第三方 DLL 发送到我的所有其他项目,只是为了从第三方 DLL 获取对 Response 对象的引用。

那么有没有办法在不必将第 3 方引用添加到项目 B 的情况下做到这一点?

最佳答案

如果您的项目正在使用第三方 DLL 中定义的对象,则也必须直接引用它。

如果您想避免这种情况,您可以将 Response 对象包装在项目 B 中定义的自定义对象中,创建方法和属性以公开 Response 上的任何必要内容类(class)。请记住,您不能直接公开 Response 类,否则将再次需要直接引用。

当然,即使使用包装,在部署最终 DLL 时,仍然需要第三方 DLL,只是不需要直接引用它。

关于C# 在项目之间共享对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33289662/

相关文章:

.NET DLL 版本和 xcopy 部署

.net - Resharper 中用于支持字段的自定义命名样式选项

C# FTP ListDirectoryDe​​tails问题

c# - 使用 IoC 的项目中目录的推荐文件夹结构是什么

c# - RoleEnvironment.IsAvailable 在应用程序启动时设置为 false

.net - 如何根据列表成员的属性拆分通用列表(T 的)?

c# - InfoPath C# 中的权限类

c# - 模拟用户代理

c# - Task.Wait() - 任务的等待线程是否已挂起

c# - 如何将流复制到多个流异步 C#.NET