我的 Web 应用程序中有各种自定义数据类型来映射数据库中的一些数据。
类似于:
Person
Id
Name
Surname
我需要在我的应用程序的大部分页面中提供人员列表
我正在考虑创建一个 getter 属性,从数据库中获取人员列表并将其存储到缓存中,这样我就不必每次都调用数据库
类似的东西(伪代码)
public List<Person> Persons
{
get { return if cache != null return List of Persons from cache else get from the database;}
}
我应该把这个 setter/getter 放在哪里?在我的 Person 类定义中或到我的基页(所有其他页面继承的页面)
谢谢
最佳答案
我认为将其放在您的基本页面中会是更好的选择。
根据您的应用程序体系结构,将流程相关代码放入域类中可能会出现问题。不过,有些人在 DDD(领域驱动设计)类型的应用程序中使用它。
更好的是,我通常尝试将这些实现细节隐藏在服务类中。您可以有一个 PersonService
类,其中包含上述方法和所有与人员相关的操作。这样,任何需要人员信息的页面都只需调用 PersonService
;您可以将页面代码集中在 GUI 相关代码上。
关于c# - getter , setter c#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2343433/