gpt4 book ai didi

c# - 模型或 View 模型应该处理模型属性的延迟加载吗?

转载 作者:太空狗 更新时间:2023-10-30 01:26:25 25 4
gpt4 key购买 nike

假设我有一个ConsumerModelConsumerModel 有很多Model 属性,其中一个是AddressModel 的列表。我希望此 Address 属性延迟加载,因为它不会在 ConsumerModel 所在的任何地方使用。它仅用于显示并允许更改消费者地址的 AddressViewModel

谁负责加载 AddressModel、ConsumerModelAddressViewModel

或者是否有针对此类事情建议的替代设计,例如从消费者中分离地址列表并将它们作为 AddressViewModel 中的单独属性处理?

public class ConsumerModel : IModel
{
private List<AddressModel> _addresses;

public List<AddressModel> Addresses
{
get;
set;
}
}

最佳答案

它属于模型。使用 ViewModel 模式的要点是首先从 View 中删除这些类型的决策。该模型负责所有数据的收集、组织和管理。 ViewModel 只负责确保模型包含的内容输出到 UI。虽然将它放在 ViewModel 中似乎是个好主意,但如果规范在下周发生变化,并且突然之间您需要在不同的 ViewModel 中使用该地址(无论出于何种原因),那么您将打破模式并且您将争先恐后地实现它向上。

关于c# - 模型或 View 模型应该处理模型属性的延迟加载吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4970954/

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