我正在研究Sacha Barbers MVVM框架Chinch的代码,我在xxxViewModel.cs文件中看到了这个:
DataService.FetchAllOrders(CurrentCustomer.CustomerId.DataValue);
DataService是一个静态类。作为一名初级开发者,我只习惯于与数据服务接口。为什么那个类是静态的?
或者你认为他只是为了这个例子吗?
这是一个好方法吗?
答案 0 :(得分:0)
公平地说,我不知道FetchAllOrders中发生了什么 - 它可能被编程为表现良好。
在实践经验中,我发现静态类很难用于维护进行数据访问所需的基础结构。我说“糟糕”,因为这些实现(我见过)不是线程安全的。当代码部署到多用户环境(例如Web应用程序)时,它就会爆炸。
查看.net框架,看看微软制作哪些类是静态的,并思考为什么。