c# - 包装 C# 类以通过公共(public)接口(interface)与多态性一起使用

标签 c# .net design-patterns polymorphism

我有几个 C# 类,每个类都具有相似的属性。 (它们是 SDK 的一部分,它们的代码无法更改。)

  • 人名
  • 产品.名称
  • 订单名称

我想以多态方式使用这些类,但它们没有实现公共(public)接口(interface)或从公共(public)基类派生,所以这是不可能的。 为了解决这个问题,我想将每个类包装在另一个实现公共(public)接口(interface)的类中,并将每个类属性连接到其相应的接口(interface)属性。

包装类的合适名称是什么?包装器、装饰器、适配器、代理?这个图案有名字吗?有没有更好的方法?

(我不想使用动态鸭子类型或 impromptu interface 。)

最佳答案

它看起来像 Adapter,因为您正在根据特定要求调整现有接口(interface)。

关于c# - 包装 C# 类以通过公共(public)接口(interface)与多态性一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14939589/

相关文章:

c# - 获取字典列表<string, string>中具有特定键的所有不同值

c# - 波浪号在表达式中是什么意思?

javascript - 在asp.net中的一个页面中显示多个内容

c# - 在 IoC 容器中捕获运行时异常

c# - 网格的最优高密度二元空间划分

c# - Active Directory 搜索的有效分页

c# - FirstOrDefault() 的性能

java - 如何将textview放置在布局的随机位置的相对布局中?

java - 如何使用一个路由生成器映射以不同方式编码和解码的 2 个服务?

c++ - C++中的动态ad hoc多态性