我在为数据库应用程序命名方法时遇到问题。
在我的Database
实例中,我有一个可以从数据库中删除Agreement
对象的方法。但是,我希望能够一次删除多个协议(protocol),以便能够使用交易。问题是我还有一个重载来删除单个 Agreement
对象。
本质上,我的结构是这样的:
public class Database
{
// ...
public void RemoveAgreement(Agreement a)
{
// ...
}
public void RemoveAgreement(IEnumerable<Agreement> agreements)
{
// ...
}
}
但这可能会令人困惑,因为协议(protocol)
列表的重载具有单数名称,尽管本质上是复数。
我的问题是,我应该如何构建它?我应该有两个名为 RemoveAgreement()
或 RemoveAgreements()
的重载吗?或者我应该使用两个单独的方法,而不是重载?
谢谢。
最佳答案
我想说,对于接收列表作为参数的方法,名称 RemoveAgreement
由于您所描述的原因,该信息不正确。
我将其称为RemoveAgreements
对于您的类(数据库)的名称,我想说您将其用作所有实体的 DAO。
如果您仅将此类用于协议(protocol)实体,我将有这 2 种方法
public void Remove(Agreement agreement)
和
public void Remove(IEnumerable<Agreement> agreements)
关于c# - 单个对象参数的方法名称为单数,列表的方法名称为复数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2707071/