qu'est-ce que tu appelles des objets de persistance ?
Car moi ce que je fais precisement.
Tout mes appels à la bdd sont fait par des procédures stockés, j'ai une classe qui contient toutes les fonctions SQL qui renvoie un dataset, ou datareader ou encore un objet créer à partir d'une classe qui colle aux données.
Je m'explique :
Namespace Site.Data
public class Article
Public sub new(ArticlesID as integer)
_ArticleID = ArticleID
end sub
Public property ArticlesID as integer
end class
end namespace
Namespace Site
Public Class Data
public sub new(connectionstring)
end sub
public function GetArticle(ArticleID as integer) as Site.Data.Article
'appel bdd
return new Site.Data.Article(bdd("ArticleID")
end function
end class
end namespace
Bien sur faire des classes, c'est le nec plus ultra, ca permet surtout de faire tres rapidement des choses, on a l'intellisense, les objets sont déja typés, apres si l'on est à l'aise avec les objets on peut faire pas mal de trucs tres puissant: mis en cache des objets, tri etc...
mais déjà de retourner un DataReader ou DataSet c'est pas mal ;)
Ensuite dans ma page, pour accéder au donné, j'ai deux solutions, soit de rajouter
un import Site.Data
dim Data as new Site.Data("connectionstring")
data.getArticle(3)
ca fait quand meme 3 ligne ca ;)
mais comme la plupart du temps, je derive l'objet page ca donne ca
imports System.Data
public class mypage
inerits system.web.ui.page
public sub new()
Data = new Data("connectionString")
mybase.new()
end sub
public property Data as Site.Data
end class
toute mes pages héritent de mypage
et je peux accéder aux données n'importe ou dans ma page en faisant : label1.text = "Article ID = " & me.Data.GetArticle(3).ArticleID
Voila en gros le principe, le code ci dessus peut etre faux, je l'ai tapé comme ca, mais c'est la structure qui est importante ;) c'est vrai que par contre ca fait beaucoup, beaucoup de travail, car faut bien géré la memoire, si l'on veut que ce soit utile ;)
est-ce la meme chose que les objets de persistance? je vais aller voir l'adresse.
Cyril