2008-12-18 7 views
2

J'ai plusieurs classes de service qui ont des méthodes statiques et offrent un service au reste de mon programme. La plupart de ces services impliquent l'accès à une instance de SqlDataContext (linq2sql).Où devrais-je instancier mon classe de service 'SqlDatacontext?

J'ai d'abord essayé d'instancier cette connexion en tant que membre privé statique par classe de service. Cela fonctionne, mais génère aussi un tas de blocages, de retards et de problèmes d'objets sales.

Maintenant, je suis allé avec une instance privée qui est instanciée au niveau de la méthode. Cela fonctionne mieux en termes de verrous et de problèmes avec les objets sales parce que la portée est plus petite et plus prévisible, mais cela génère également un tas de surcharge en termes de poignées de main de connexion.

Comment suggérez-vous de résoudre ce problème?

Répondre

2

Jetez un oeil à this article by Rick Strahl - il explique les options et fournit une bonne mise en œuvre de l'usine pour faire face à la création d'une demande unique par contexte web/fil (en fonction de ce que vous travaillez dans

a utilisé ce dans la plupart des. les applications sur lesquelles j'ai travaillé où nous avons utilisé linq-to-sql et ça semblait la bonne approche!

+0

Merci, allez y jeter un oeil :) –

+0

Bonne chance avec! – Jennifer

+0

A été une bonne lecture, mais avez-vous vérifié les commentaires aussi? On dirait que je me suis ouvert une boîte de Pandore en choisissant linq2sql. Si seulement Hibernate était aussi facile à configurer que drag'n drop: p –

Questions connexes