1

我正在尝试将代码分离/重构到文件夹中,并将我的所有“填充”属性移动到一个合乎逻辑的位置。

是否有使用函数填充属性的技术名称

例子:

public class AccountsView
{
    public string Email { get; set; }
    public string FirstName { get; set; }
    public string LastName { get; set; }
}

这将放在它自己的类中..现在它在上面的类中

public static AccountsView FillCustomerView(Account data)
{
    view.Email = data.Email;
    view.FirstName = data.FirstName;
    view.LastName = data.LastName;
    return view;
}

这个“FillCustomerView()”函数会被调用什么?

4

1 回答 1

2

此处描述的概念称为对象映射,在此示例中,它被实现为视图模型上的方法。

这种实现的缺点是它将视图模型与域模型耦合,这通常是不受欢迎的。为了避免这种情况,通常使用映射器对象——它们定义从一个模型到另一个模型的投影。

您可以使用一些已经存在的实现。最受欢迎的似乎是Automapper,但还有其他的。例如,优秀的ServiceStack框架也支持它。

于 2013-03-13T15:32:39.010 回答