2010-11-02 62 views
1

我试图通过一个惊人的数量的职位 - 真正有价值的拖网,因为还有其他方面,你可以吸收,即使它不直接链接到主要问题。愚蠢的问题关于静态和实例数据库访问.net

就我而言,正如标题所说,我真的想尝试理解使用静态类/方法进行数据访问的“现实世界”优点/缺点。

有关我正在使用的更多信息。

  1. 我使用模式/实践企业库5.0的数据访问块(与 缓存等)。

  2. 我实际的“业务对象”是一个静态类,用静态方法来说,在转“getContacts” 回返说,一个XML字符串等

所以,真正的问题是 鉴于上述结构,使用静态类来返回XML字符串是“更好还是更高效/更好的做法” - 再次考虑到我不需要任何实例关系 - 只是一个“给我提供数据“并离开..或者是更接受使用实例基类?

我意识到每种方法都有环境的事实,但只是试图获得反馈给我指示追求。

谢谢! David。

+0

你将如何处理与静态类的数据连接? (并发)。你会用单身吗? – RPM1984 2010-11-03 00:00:08

+0

对不起,我应该提到,无论正确还是错误,我的类只是简单地将数据(在第一个实例中)返回到AJAX前端。本质上是断开的。即,我没有保持任何连接打开..然后,因为我需要更新数据例如,这是一个单独的过程..我写的应用程序至少在这种性质上是完全断开的。 – 2010-11-03 00:16:39

回答

1

它根本不是一个愚蠢的问题。首先我会告诉你When to Use Static Classes in C#,因为那里有很多很棒的建议。

何时使用静态方法/类实际上都取决于应用程序的设计。

即便如此,我还是觉得在长期设计中使用实例而不是静态方法会更好。如果您打算在您的应用程序中使用任何OO概念,那么静态方法会立即限制您。您通常可以使用实例创建更灵活的系统等。

您还需要非常小心地使用有关静态字段的静态方法。我见过很多开发人员的例子,他们并不完全理解静态字段和实例字段之间的区别,并导致各种各样的问题。所以,为了给你一个直接的答案,我认为你应该尽量避免使用静态方法,因为从长远来看,它将通过沿着OO路线回报。

+0

嘿感谢帖子..是的直觉是使用实例..只是试图使用静态来减少实例化需要调用什么本质上是“火灾和遗忘”过程。然而,不知道什么是轨道,使实例可能是选择..感谢张贴!并感谢链接到其他SO贴子呢! – 2010-11-03 00:23:03

+0

其他链接到其他帖子非常好!接受的答案很好,真正解释了我需要的!再次感谢你!! – 2010-11-03 00:31:50