我想在C#中定义一个类.我找到了这两种方法:
方法1:
public class customer
{
private string _name ;
private string _family;
public string Name
{
get { return __name; }
set { if(value=="")message(" ??? ??????? ?? ???? ???? ");
_name= value; }
}
public string Family
{
get { return _family; }
set { if(value=="")message(" ??? ??????? ?? ???? ???? ");
_family= value; }
}
public void AddCustomer()
{
add _name and _family to database
}
}
Run Code Online (Sandbox Code Playgroud)
方法2:
public class customer
{
public void AddCustomer(string name ,string family)
{
//code to add a customer
}
}
Run Code Online (Sandbox Code Playgroud)
我很迷惑; 哪一个应该使用,这两种方法有什么区别?哪一个更好,更常用?
Jon*_*eet 10
我不会做其中任何一个.您正在引入一个AddCustomer 在customer类上调用的方法.我不希望Customer了解数据库 - 我希望某种数据访问层或客户存储库能够了解它.
A Customer可能有一个构造函数采取名称和家庭,或任何其他,然后你CustomerRepository会有一个Add(Customer)方法.
以另一种方式来思考:我希望在没有任何数据库知识的情况下使用Customer类(应该有资本C符合.NET命名约定)是完全合理的,因此它可能不应该知道数据库.
不可否认,我自己在自定义XML序列化方面打破了这些自己的规则,允许静态FromXElement方法和实例方法ToXElement...但至少不涉及外部依赖性.
| 归档时间: |
|
| 查看次数: |
143 次 |
| 最近记录: |