我正在设计一个WCF Web服务,可能会在任何给定时间被10,000多个单独的客户调用。当服务被调用时,服务创建“Object1”类。
public List<string> AnswerClient() {
Object1 _hello = new Object1();
return _hello.AnswerClient();
}
因为Object1类需要在其中创建其他Object1类。它需要创建其他子集Object1类。我正在考虑在Object1类中使用静态方法来创建其他Object1方法,如
Object1.AnswerClient()
因为我认为我不需要首先创建一个特定的Object1()。如果多个客户端调用该服务,这个Object1.AnswerClient()是否会破坏代码,因为它是静态的?因为静态特定于类,所有客户端似乎都受到影响?
我应该如何设计这个课程。客户端调用服务,服务根据客户端数据创建对象。其中的对象创建了20个类似的对象(根据数据拆分用户数据)。
任何帮助和见解都会有所帮助。我应该如何设计这个呢?
感谢。
答案 0 :(得分:4)
如果AnswerClient
方法本身不需要除了它创建的状态之外的任何状态,那么将它设置为静态应该没有问题。
话虽如此,我会以不同的方式思考这个问题。 AnswerClient
真的是Object1
的函数(也可以得到更好的名字)吗?或者它是一种通用的实用方法?如果它逻辑上绑定到特定的“Object1”实例,那么我将它作为实例方法。如果它更像是一个通用实用程序,并且与“Object1”表示的内容没有直接关系,那么将其设置为静态。
答案 1 :(得分:0)
我建议你看看Factory design pattern做你上面描述的事情。