gpt4 book ai didi

c# - 将属性从模型复制回对象——显式复制还是遍历属性集合?

转载 作者:行者123 更新时间:2023-11-30 21:03:37 25 4
gpt4 key购买 nike

我正在获取一个对象并将其属性写入模型,然后在我的 View 中显示该模型以进行编辑。之后,用户点击提交,模型被发送回我的 Controller 。我现在想获取模型的属性并将它们写回对象。

我正在考虑使用反射来这样做,但我有点谨慎。我想我会检查是否有更明显的答案。

代码:

//OrderDetailsModel
public OrderDetailsModel(Order order)
{
CompletionDateTime = order.CompletionDateTime;
CreateDateTime = order.CreateDateTime;
UpdateDateTime = order.UpdateDateTime;
BusinessArea = order.BusinessArea;
Comment = order.Comment;
CostCenter = order.CostCenter;
CreateUsername = order.CreateUsername;
Customer = order.Customer;
IncidentNumber = order.IncidentNumber;
OrderID = order.ID;
OrderStatus = order.OrderStatus;
ProjectName = order.ProjectName;
ProjectNumber = order.ProjectNumber;
ProjectSubcode = order.ProjectSubcode;
UpdateUsername = order.UpdateUsername;
Description = order.Description;
}

//OrdersController
public ActionResult SaveOrderDetails(OrderDetailsModel orderDetailsModel)
{
Order order = WorkflowManager.GetOrderByID(orderDetailsModel.OrderID);

foreach(PropertyInfo propertyInfo in orderDetailsModel.GetType().GetProperties)
{
//Write properties back.
}

return null;
}

关于如何做到这一点的想法?

最佳答案

看看AutoMapper .它简化了左手<->右手编码的工作。

这是一个例子:

Mapper.CreateMap<Order, OrderDetailsModel>();
OrderDetailsModel dto = Mapper.Map<Order, OrderDetailsModel >(order);

关于c# - 将属性从模型复制回对象——显式复制还是遍历属性集合?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12733395/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com