为了在 c# 中创建干净的解耦代码,我希望获得一些关于使用动态参数构造对象的反馈。通常我相信你会创建一个接口并将接口用作合同,但是你必须为你所有的类创建接口,我认为这有点恶心......
所以,我的问题是做这样的事情有什么好处和坏处:
class Class1
{
public string Description { get; set; }
public string Name { get; set; }
public Class1(dynamic obj)
{
Name = obj.Name;
Description = obj.Description;
}
}
对比
class Class1
{
public string Description { get; set; }
public string Name { get; set; }
public Class1(IClass1 obj)
{
Name = obj.Name;
Description = obj.Description;
}
}