我正在尝试将代码分离/重构到文件夹中,并将所有“填充”属性移动到逻辑位置。
是否有使用函数填充属性的技术名称
示例:
public class AccountsView
{
public string Email { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
}
这将放在它自己的Class中..现在它在上面的类
中public static AccountsView FillCustomerView(Account data)
{
view.Email = data.Email;
view.FirstName = data.FirstName;
view.LastName = data.LastName;
return view;
}
这个'FillCustomerView()'函数会被调用什么?
答案 0 :(得分:2)
此处描述的概念称为对象映射,在此示例中,它是作为视图模型的方法实现的。
这种实现的缺点是它将视图模型耦合到域模型,这通常是不受欢迎的。为避免这种情况,通常使用映射器对象 - 它们定义从一个模型到另一个模型的投影。
您可以使用一些已经存在的实现。最受欢迎的似乎是Automapper,但还有其他人。例如。优秀的ServiceStack框架也支持它。