【问题标题】:Assign C# variable to another variable, avar.GiveTo(something.else)将 C# 变量分配给另一个变量 avar.GiveTo(something.else)
【发布时间】:2016-12-16 15:28:15
【问题描述】:

这似乎是一个愚蠢的问题,但我有理由想将一个对象 A 中的一堆属性复制到另一个 B 中,其中 A 是 B 的子集。 这意味着当用 C# 编写代码时,很难确定我是否真的从 A 中复制了所有内容。

A.

B.

所以这是一件很挑剔的事情,我只是想知道如何编写一个可以做到这一点的扩展方法(我真的不知道。)

B.something.GiveTo(A.somethingelse)

我不想使用 AUTOMAPPER,因为它会出错,因为在这种情况下 B 是 A 的 SUPERSET。

我不是想问如何映射对象的属性。我在问如何写一些可以让我输入A.propa.ExtensionMethodGiveTo(b.propa)

【问题讨论】:

  • 你有没有尝试过,如果有,请发布你正在进行的代码
  • 您要将A相似属性的值复制到B吗?
  • @Prajwal 是的,问题是这样说的。
  • 我真的不知道这就是我发帖的原因
  • 可以与stackoverflow.com/questions/16118085/… 重复(或任何其他“A 到 B 类型的映射属性”问题)...

标签: c# visual-studio


【解决方案1】:

您可以在类型A 中获取属性列表。 (How to get the list of properties of a class?)

创建一个通用方法来输入AB。 (Generic Methods (C# Programming Guide))

然后比较属性类型和名称,如果两者相同,则可以将其分配给传递的实例。

【讨论】:

  • 我做到了。到目前为止,我坚持答案。如果这不是您所期望的,那么请编辑您的问题并进行更多解释。请查看stackoverflow.com/help/how-to-ask
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-06-13
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多