不知道在哪里问,哪1更好?

时间:2012-12-26 09:54:10

标签: c#

       Customer cust = new Customer();
       cust.RecId = lblRecId.Text;
       cust.CustCd = txtCustCd.Text;
       cust.CustName = txtCustName.Text;
       cust.Save();

OR

cust.SaveRecord(lblRecId.Text , txtCustCd.Text, txtCustName.Text)

都做同样的工作,但哪一个实际上更好?我和领导实际上有争论,我使用top方法,因为我可以按任意顺序自由分配值,但他坚持认为底部1更好?不知道究竟要搜索什么,任何一个想法给我一些指导

2 个答案:

答案 0 :(得分:2)

第一个是更好的方法。但这是个人观点。

Save应该保持对象的当前状态。和状态可以在程序的其他部分更新。

然而,过载Save也不错。但是作为没有。字段增加后一版本变得笨重且无法维护。

答案 1 :(得分:2)

如果您已经拥有客户类中客户的所有数据,那么第一种方法就很棒。 如果您没有包含数据的客户类,则第二种方法更好。

我们经常使用第一种方法,但我们也有一些静态方法来检索具有特定密钥的客户,例如:

 // A static method in Customer class.
 public static Customer Get(string key)
 {
     Customer customer;
     FCustomers.TryGetValue(key, out customer);
     return customer;
 }

这带有一个静态构造函数,可以将所有客户加载到内存中,也可以从数据库中创建,保存和删除客户。

这只是因为只与所需的数据有关,我认为客户不是那种数据。