Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 关于静态和实例数据库访问.net的愚蠢问题_C#_.net_Design Patterns_Ado.net_Enterprise Library - Fatal编程技术网

C# 关于静态和实例数据库访问.net的愚蠢问题

C# 关于静态和实例数据库访问.net的愚蠢问题,c#,.net,design-patterns,ado.net,enterprise-library,C#,.net,Design Patterns,Ado.net,Enterprise Library,我已经试着浏览了大量的帖子——非常有价值,因为还有其他方面你可以吸收,即使它与主要问题没有直接联系 在我的例子中,正如标题所说,我真的想尝试理解使用静态类/方法进行数据访问的“现实世界”的优缺点 我正在使用的更多信息 我正在使用Patterns/Practices Enterprise Library 5.0作为数据访问块(和 缓存等) 我实际的“业务对象”是一个静态类,静态方法是“getContacts” 依次返回一个XML字符串等 所以问题真的是 考虑到上面的结构,使用静态类返回XML字符串

我已经试着浏览了大量的帖子——非常有价值,因为还有其他方面你可以吸收,即使它与主要问题没有直接联系

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

我正在使用的更多信息

  • 我正在使用Patterns/Practices Enterprise Library 5.0作为数据访问块(和 缓存等)

  • 我实际的“业务对象”是一个静态类,静态方法是“getContacts” 依次返回一个XML字符串等

  • 所以问题真的是 考虑到上面的结构,使用静态类返回XML字符串是否“更好/更有效/更好的做法”——再次考虑到我不需要任何实例关系——只是“给我数据”和“离开”中的一个。。或者使用实例基类更容易被接受

    我意识到,每种方法都有其适用的环境,但我只是想得到反馈,为我指明前进的方向

    谢谢!
    大卫。

    这根本不是一个愚蠢的问题。首先,我要告诉你,这里有很多很好的建议

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

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

    对于静态字段,您还需要非常小心地使用静态方法。我见过很多开发人员不理解静态字段和实例字段之间的区别的例子,这导致了各种各样的问题


    因此,为了给你一个直截了当的答案,我认为如果可以的话,你应该尽量避免使用静态方法,因为从长远来看,采用面向对象的方法会有回报。

    这根本不是一个愚蠢的问题。首先,我会告诉你,因为有很多很好的建议

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

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

    对于静态字段,您还需要非常小心地使用静态方法。我见过很多开发人员不理解静态字段和实例字段之间的区别的例子,这导致了各种各样的问题


    因此,为了给你一个直截了当的答案,我认为如果可以的话,你应该尽量避免使用静态方法,因为从长远来看,使用面向对象的方法会有回报。

    你如何处理静态类的数据连接?(并发)。您会使用单例吗?对不起,我应该正确或错误地提到,我的类只是将数据(在第一个实例中)返回到AJAX前端。。基本上是断开的。。i、 e.我没有打开任何连接。。例如,由于我需要更新数据,这是一个单独的过程。。我正在编写的应用程序至少在这方面是完全断开的。您如何处理静态类的数据连接?(并发)。您会使用单例吗?对不起,我应该正确或错误地提到,我的类只是将数据(在第一个实例中)返回到AJAX前端。。基本上是断开的。。i、 e.我没有打开任何连接。。例如,由于我需要更新数据,这是一个单独的过程。。我正在编写的应用程序至少在这方面是完全断开的。嘿,谢谢你的帖子。。是的,直觉是使用实例。。只是尝试使用static来减少实例化调用本质上是“fire-and-forget”流程的需要。然而,由于不知道接下来会发生什么,实例可能是一种选择。。谢谢你的发帖!!谢谢你给我发的另一篇文章的链接!实际上,另一篇文章的链接非常棒!被接受的答案很好,真的解释了我需要什么!!再次感谢你!!嘿,谢谢你的来信。。是的,直觉是使用实例。。只是尝试使用static来减少实例化调用本质上是“fire-and-forget”流程的需要。然而,由于不知道接下来会发生什么,实例可能是一种选择。。谢谢你的发帖!!谢谢你给我发的另一篇文章的链接!实际上,另一篇文章的链接非常棒!被接受的答案很好,真的解释了我需要什么!!再次感谢你!!