服务方法的命名约定

时间:2013-03-19 15:51:05

标签: c# naming-conventions

这是一个基本的命名约定问题,但我没有找到具体处理此问题的任何地方。

我有一个名为Foo的类,还有一个名为Bar的类。

我在服务中有一个方法来检索Foo的所有Bars。我应该说出来吗:

GetFooBars(int fooId)

GetBarsForFoo(int fooId)

要扩展,您可以为其他类设置Bars,例如

GetMooBars(int mooId)

GetBarsForMoo(int mooId)

2 个答案:

答案 0 :(得分:5)

我建议

GetBarsByFooId(int fooId)

GetBarsByMooId(int mooId)

...调整您的API以支持此类调用

[DataContract]
[KnownType(typeof(GetBarsByFooIdRequest))]
[KnownType(typeof(GetBarsByMooIdRequest))]
abstract class GetBarsRequest
{
   ..
}

[DataContract]
sealed class GetBarsByFooIdRequest : GetBarsRequest
{
   [DataMember]
   public int FooID { get; set; }
}

sealed class GetBarsByMooIdRequest : GetBarsRequest
{
   [DataMember]
   public int MooID { get; set; }
}

GetBarsResponse GetBars(GetBarsRequest);

答案 1 :(得分:2)

我宁愿使用以下其中一项:

GetBarsByFoo(int fooID) { }

GetBarsByMoo(int mooID) { }

GetBarsByFooId(int fooID){ }

GetBarsByMooId(int mooID){ }