如何使用视图模型管理api响应

时间:2017-05-04 12:27:58

标签: c# design-patterns mvvm xamarin.forms

我有一个API,它发送错误状态标志,错误消息和用户对象。目前我正在使用API​​响应类来获取这些响应。

public class UsersResponse
{
    public int Status { get; set; }
    public string Message { get; set; }
    public List<User> Users { get; set; }
}

我在上面提到的类的实例中收到响应,然后在视图上显示结果。我在视图后面的代码中得到了响应。

我想知道这是否是正确的方法呢?如果使用视图模型,它是否会被视图模型处理?如果是,那么将如何完成。

我正在考虑养成使用视图模型的习惯,而不是完全依赖文件后面的视图代码。

解决这种情况的最佳方法将会给予极大的帮助并受到高度赞赏。

谢谢:)

1 个答案:

答案 0 :(得分:0)

在ViewModel中公开像IsBusy这样的INPC属性,在访问长时间运行的进程之前将其打开(最好使其异步),然后将其关闭。

您不应该在代码隐藏中加载数据,在MVVM中应该最小化代码隐藏并限制为仅限视图的代码(例如,如果您有多个平台)。想想JS背后的代码就像HTML一样,甚至比这还少 ViewModel应该负责加载数据并对其进行操作。 ViewModel =视图的模型。