模型可以直接与数据访问层通信吗?

时间:2019-02-19 16:32:45

标签: c# mvvm

对不起,如果我问的问题不对,但这是一个示例:

public class Person : BaseModel {

    // somne properties like username, password, isLoggedIn


    public Person(SomeDataService dataService){...}

    public bool Login(){

       var result = dataService.TryToLogin(this.username, this.password);

      // do some stuff with result

    }

}

有人说可以接受,但有人说不可以,所以我不知道什么是对的。

1 个答案:

答案 0 :(得分:0)

使用任何适用于您的代码是合法的,MVVM只是一个约定,可以帮助您更好更快地进行编码,但是如果它不适合您并且没有第三者(例如您的第三方)雇主)执行此请求,您就可以自由地做最适合自己的事情。

说到MVVM,上面的此类应该是Model,并且如果您想遵守MVVM约定,则您不能做您所做的事情,它应该只包含简单的属性。但是正如我上面所说,某人必须选择是否要使用MVVM,因此,如果您尚未决定遵守MVVM约定,则可以使用此代码,只是指望,如果您需要某人,可能会有些困惑其他也可以处理该代码。