AutoMapper for .Net允许您从一种类型映射到另一种类型。它最基本的功能是通过复制类型B中存在于类型B中的属性值(具有匹配的名称和类型),从另一种类创建一种类型。
示例:
public class ClassA {
public string StringProp { get; set; }
public int IntProp { get;set; }
}
public class ClassB {
public string StringProp { get; set; }
public int SomeIntProp { get; set; }
}
ClassA classAInstance = new ClassA { StringProp = "Test", IntProp = 5 };
ClassB classBInstance = Mapper.Map<ClassA, ClassB>(classAInstance);
// This creates a new instance of ClassB and sets its StringProp property to "Test".
// It does not set the property on ClassB called "SomeIntProp" because there is no
// property on ClassA called "SomeIntProp"
Objective-C有这样的东西吗?
答案 0 :(得分:1)
如果你真的想要,你可以使用键值编码,但我会强烈考虑你为什么要首先做这样的事情。
要使用键值编码执行此操作,请使用-dictionaryWithValuesForKeys:
和-setValuesForKeysWithDictionary:
执行此操作。它们记录在NSKeyValueCoding Protocol Reference。
答案 1 :(得分:1)
答案 2 :(得分:0)
使用AutoMapper后,我遇到了类似的.NET世界问题,最后我使用了OCMapper库。
功能强>