Traduction VB.NET --> ASP.NET [Résolu]

mrassaa 143 Messages postés lundi 15 mars 2010Date d'inscription 12 juin 2013 Dernière intervention - 6 août 2010 à 12:45 - Dernière réponse : Mayzz 2859 Messages postés mardi 15 avril 2003Date d'inscription 26 novembre 2013 Dernière intervention
- 31 août 2010 à 17:56
Salut,
Bin en fait je voudrais la translation du code suivant de vb.net 2008 à asp.net 2008:

Private Sub RefreshDataSource()

        Me.UserTableAdapter.Fill(Me.DataSetUser.User)
        Me.AdminTableAdapter.Fill(Me.DataSetUser.Admin)

    End Sub


(ici j'ai utiliser le VB Express Edition)
J'ai un petit peu essayer tout seul et je trouve ça (j'utilise ici le Visual Web Designer 2008):

Private Sub RefreshDataSource()

        DataSetUserTableAdapters.UserTableAdapter.Fill(DataSetUser.User)
        DataSetUserTableAdapters.AdminTableAdapter.Fill(DataSetUser.Admin)

    End Sub


Et comme erreur (DataSetUserTableAdapters.UserTableAdapter.Fill et DataSetUserTableAdapters.AdminTableAdapter.Fill sont soulignés en bleu) j'ai : une référence à un membre non partagé requiert une référence d'objet.
Merci d'avance

Forza Taraji!!
Afficher la suite 

Votre réponse

39 réponses

Meilleure réponse
mrassaa 143 Messages postés lundi 15 mars 2010Date d'inscription 12 juin 2013 Dernière intervention - 6 août 2010 à 12:53
3
Merci
Bin j'ai trouvé une solution alternative :
Dim ds as new DataSetUser
ds.AcceptChanges()

En principe,ça marche et plus besoin du Sub RefreshDataSource

Forza Taraji!!

Merci mrassaa 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 90 internautes ce mois-ci

Commenter la réponse de mrassaa
Mayzz 2859 Messages postés mardi 15 avril 2003Date d'inscription 26 novembre 2013 Dernière intervention - 6 août 2010 à 16:05
0
Merci
mrassaa, pour les données en asp.net tu peux utiliser la mathode classique DataSet + Command etc...

Ou tu peux utiliser les ObjectDataSource, SQLDataSource etc... qui sont plus simples et peuvent se lier directement à tes contrôles (Tu seras obliger d'en passer par la si ton application comporte des DataGridView).

Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer.
Commenter la réponse de Mayzz
mrassaa 143 Messages postés lundi 15 mars 2010Date d'inscription 12 juin 2013 Dernière intervention - 9 août 2010 à 09:16
0
Merci
J'ai essayé avec DataSet comme dans VB.NET mais le problème c'est qu'il ne reconnait pas la ligne de code suivante :
Me.CopropriétaireTableAdapter.FillMoha(Me.DataSet1.Copropriétaire)

et j'ai essayé aussi avec "ObjectDataSource" et je ne suis pas arrivé à me débrouiller aussi.
Donc j'ai finalement utilisé :
Dim ds as new DataSet1
ds.AcceptChanges() 


Forza Taraji!!
Commenter la réponse de mrassaa
mrassaa 143 Messages postés lundi 15 mars 2010Date d'inscription 12 juin 2013 Dernière intervention - 9 août 2010 à 10:04
0
Merci
Là, le problème que je rencontre est d'affecter au DataGridView le DataSet de mon choix. En fait, j'ai ajouté au Site des éléments existants qui ne sont rien d'autres que mes DataSet du projet VB.
Mais quand je dis au DataSet de s'affecter un ObjectDataSource, il me donne le choix que de choisir entre les DataSet que j'ai créer avec VWD. Est-ce que je dois refaire les DataSet?
(En attendant ta réponse, je vais suivre cette voix).

Forza Taraji!!
Commenter la réponse de mrassaa
Mayzz 2859 Messages postés mardi 15 avril 2003Date d'inscription 26 novembre 2013 Dernière intervention - 9 août 2010 à 11:49
0
Merci
Comme je te l'ai dis plus haut, il faut en passer par les SqlDataSource. Ce sont des sortes de 'DataSet Web'. Les xDataSources fonctionnent en mode connectés.

Le mieux pour toi serait de ne travailler qu'avec cela. C'est d'autant plus simple à utiliser qu'un DataSet. De plus tu possede un projet Winform avec un DataSet, tu as donc juste des copier/coller à faire de tes requêtes SQL pour passer d'un dataset à un xDataSource.

De plus les xDataSources te permettent de récupérer une valeur du formulaire ou d'un contrôle directement au chargement de celui-ci. C'est vraiment partique. Par exemple si tu souhaite faire un formulaire pour afficher un produit, tu peux créer un SqlDataSource avec ta requête select, admettons :

SELECT * FROM Products WHERE ID = @ID

Le SqlDataSource va alors te demander ou chercher le paramètre ID, tu peux lui préciser la propriété SelectedValue d'un ComboBox par exemple, ou encore une valeur dans l'url. En suite tu lie ce SqlDataSource à un DataGrid et lors ce que tu appelle la page, par exemple comme ceci :

http://mondomaine.com/mapage.aspx?id=1

Le SqlDataSource ira chercher directement l'ID du produit dans l'url, de ce fait, aucun code VB n'est à saisir. Ce qui n'est pas possible en Winform avec un DataSet.

Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer.
Commenter la réponse de Mayzz
mrassaa 143 Messages postés lundi 15 mars 2010Date d'inscription 12 juin 2013 Dernière intervention - 9 août 2010 à 12:19
0
Merci
Ok mais pour cela je dois faire "ajouter élément existant" et mettre mes DataSet de mon projet WinForm ou créer un nouveau élément (et de quel type cet élément parce que j'ai un nouveau problème que je ne parviens pas à comprendre lorsque je crée plus de 2 DataSet)?

Forza Taraji!!
Commenter la réponse de mrassaa
mrassaa 143 Messages postés lundi 15 mars 2010Date d'inscription 12 juin 2013 Dernière intervention - 9 août 2010 à 12:22
0
Merci
OK j'ai saisie : je crée mon SQLDataSource.Je mets ma requéte puis je crée tout simplement mon GridView et je lui affecte mon SQLDataSource. C'est ça?

Forza Taraji!!
Commenter la réponse de mrassaa
mrassaa 143 Messages postés lundi 15 mars 2010Date d'inscription 12 juin 2013 Dernière intervention - 9 août 2010 à 12:25
0
Merci
Merci,j'étais vraiment bloqué depuis ce matin et là tu m'aide vachement.

Forza Taraji!!
Commenter la réponse de mrassaa
Mayzz 2859 Messages postés mardi 15 avril 2003Date d'inscription 26 novembre 2013 Dernière intervention - 9 août 2010 à 12:32
0
Merci
Oui c'est bien cela.

Le SqlDataSource te permet de saisir les 4 requêtes de base (SELECT, INSERT, UPDATE, DELETE) c'est en fonction de ses quatre requêtes que les composants affectés pourrons interagir avec tes données.

Si tu te débrouille bien tu auras très peux de code à saisir, tout se fait via les assistants de VB. Mais je te conseille d'essayer de trouver des tutos pour maitriser au max le concept, quoi que cela soit assez intutif pour quelqu'un de débouillard ou pour quelqu'un qui maitrise ADO.Net en Winform.

Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer.
Commenter la réponse de Mayzz
mrassaa 143 Messages postés lundi 15 mars 2010Date d'inscription 12 juin 2013 Dernière intervention - 9 août 2010 à 12:42
0
Merci
Bin pour ce qui est utilisation de la base avec VB je l'ai appris de ton tuto vu qu'à la fac on a survolé (dans un concorde) le sujet sans y entrer vraiment.Là, je veux reproduire à peu près ce que tu as fais avec VB.NET avec le formulaire et le RefreshDataSet pour qu'on voit le résultat directement.

Forza Taraji!!
Commenter la réponse de mrassaa
mrassaa 143 Messages postés lundi 15 mars 2010Date d'inscription 12 juin 2013 Dernière intervention - 9 août 2010 à 13:11
0
Merci
Zut,il y a un problème. J'ai fini mon interface et lorsque j'exécute, la page web s'ouvre et ils me mettent :
Le fournisseur de données .Net Framework demandé est introuvable. Il n'est peut-être pas installé. 


Il y a ça aussi :
Description : Une exception non gérée s'est produite au moment de l'exécution de la demande Web actuelle. Contrôlez la trace de la pile pour plus d'informations sur l'erreur et son origine dans le code. 

Détails de l'exception: System.ArgumentException: Le fournisseur de données .Net Framework demandé est introuvable. Il n'est peut-être pas installé.

Erreur source: 

Une exception non gérée s'est produite lors de l'exécution de la demande Web actuelle. Les informations relatives à l'origine et l'emplacement de l'exception peuvent être identifiées en utilisant la trace de la pile d'exception ci-dessous.  

Trace de la pile: 


[ArgumentException: Le fournisseur de données .Net Framework demandé est introuvable. Il n'est peut-être pas installé.]
   System.Data.Common.DbProviderFactories.GetFactory(String providerInvariantName) +1310319
   System.Web.UI.WebControls.SqlDataSource.GetDbProviderFactory() +67
   System.Web.UI.WebControls.SqlDataSource.GetDbProviderFactorySecure() +22
   System.Web.UI.WebControls.SqlDataSource.CreateConnection(String connectionString) +11
   System.Web.UI.WebControls.SqlDataSourceView.ExecuteSelect(DataSourceSelectArguments arguments) +89
   System.Web.UI.DataSourceView.Select(DataSourceSelectArguments arguments, DataSourceViewSelectCallback callback) +19
   System.Web.UI.WebControls.DataBoundControl.PerformSelect() +142
   System.Web.UI.WebControls.BaseDataBoundControl.DataBind() +73
   System.Web.UI.WebControls.GridView.DataBind() +4
   System.Web.UI.WebControls.BaseDataBoundControl.EnsureDataBound() +82
   System.Web.UI.WebControls.CompositeDataBoundControl.CreateChildControls() +72
   System.Web.UI.Control.EnsureChildControls() +87
   System.Web.UI.Control.PreRenderRecursiveInternal() +44
   System.Web.UI.Control.PreRenderRecursiveInternal() +171
   System.Web.UI.Control.PreRenderRecursiveInternal() +171
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +842

 


--------------------------------------------------------------------------------
Informations sur la version : Version Microsoft .NET Framework :2.0.50727.3603; Version ASP.NET :2.0.50727.3614 


Je ne sais qu'est ce qu'il veut dire? SQL Server n'est pas installé? Impossible car j'utilise Visual Studio 2008 (la boîte avait le logiciel avec même le certificat)
La base de donné n'est pas installé? Je ne le pense pas non plus car j'ai suivi leurs étapes et effectué la connexion.
Forza Taraji!!
Commenter la réponse de mrassaa
Mayzz 2859 Messages postés mardi 15 avril 2003Date d'inscription 26 novembre 2013 Dernière intervention - 9 août 2010 à 13:16
0
Merci
Non à mon avis, cela provient de ta connexion.

La première étape lors ce que tu crée un SqlDataSource est de renseigner une connexion aux données. Si aucune chaine de connexion ne peut être trouvé dans le web.config l'assistant te propose de créer une connexion. C'est à ce moment que se fait le choix du fournisseur de données. La chaine de connexion est par la suite stocké dans le web.config.

Tu peux la poster ici que j'y jette un oeil ?


Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer.
Commenter la réponse de Mayzz
mrassaa 143 Messages postés lundi 15 mars 2010Date d'inscription 12 juin 2013 Dernière intervention - 9 août 2010 à 13:21
0
Merci
<connectionStrings>
        
        
        
    </connectionStrings>


Alors Docteur,c'est grave?

Forza Taraji!!
Commenter la réponse de mrassaa
mrassaa 143 Messages postés lundi 15 mars 2010Date d'inscription 12 juin 2013 Dernière intervention - 9 août 2010 à 13:23
0
Merci
Je m'apperçoit que je me suis connecté deux fois à la même base (BDR@ss@@87.sdf) mais je ne pense pas que c'est le problème.

Forza Taraji!!
Commenter la réponse de mrassaa
mrassaa 143 Messages postés lundi 15 mars 2010Date d'inscription 12 juin 2013 Dernière intervention - 9 août 2010 à 13:28
0
Merci
Parce que lorsque je supprime la première le problème reste le même alors que je supprime la deuxième,on me dit que ConnexionString n'existe pas (donc la deuxième est la bonne).
Autre chose,j'ai fait aperçu des données lorque j'ai créer SQLDataSource et j'avais deux lignes pour la table Copropriétaire.

Forza Taraji!!
Commenter la réponse de mrassaa
Mayzz 2859 Messages postés mardi 15 avril 2003Date d'inscription 26 novembre 2013 Dernière intervention - 9 août 2010 à 13:39
0
Merci
Ah oui, tu utilise SQLCe pour un projet Web, c'est fortement déconseillé, il faut utiliser SQL Server.

Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer.
Commenter la réponse de Mayzz
mrassaa 143 Messages postés lundi 15 mars 2010Date d'inscription 12 juin 2013 Dernière intervention - 9 août 2010 à 13:46
0
Merci
Le problème c'est que la base est déjà créé en SQLCe. Donc je dois la refaire en SQL Server?
Y a pas un autre moyen pour ne pas la refaire? Sinon on ne peut pas créer une base de données locale avec VWD?

Forza Taraji!!
Commenter la réponse de mrassaa
mrassaa 143 Messages postés lundi 15 mars 2010Date d'inscription 12 juin 2013 Dernière intervention - 9 août 2010 à 15:23
0
Merci
Dernière question de la journée :
Visual Studio ne me donne plus les possibilités que j'ai lorsque je commence à écrire quelque chose (genre SQLDat ... il devrait me donner entre autres SQLDataSource1).
Comment je fais pour réactiver cette option??
Merci et à demain peut-être

Forza Taraji!!
Commenter la réponse de mrassaa
mrassaa 143 Messages postés lundi 15 mars 2010Date d'inscription 12 juin 2013 Dernière intervention - 9 août 2010 à 15:26
0
Merci
Je veux parler de l'intelliSence (je le trouve dans Edition mais je n'arrive pas à l'activer)

Forza Taraji!!
Commenter la réponse de mrassaa
mrassaa 143 Messages postés lundi 15 mars 2010Date d'inscription 12 juin 2013 Dernière intervention - 20 août 2010 à 15:04
0
Merci
J'ai finis mon stage (la boîte est assez surprise que j'ais terminé mon projet à temps) et j'ai deux questions qui se posent :
1/Au stage, je devais mettre ça comme code pour envoyer des mails :

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 
Dim mail As New MailMessage() 

'set the addresses 
mail.From = New MailAddress("contact@prodit.net") 
mail.To.Add("joedassin87@gmail.com") 

'set the content 
mail.Subject = "sujet de mail" 
mail.Body = "le body du mail." 

Dim client As New SmtpClient("xsmtp.gnet.tn") 

Try 
client.Send(mail) 
MsgBox("coucou ca va") 
Catch ex As Exception 

MsgBox("Echec de l'envoi") 

End Try 


End Sub


Que dois-je changer?(je sais que je dois changer mail.From entre autres mais par quoi?Sachant que je dois présenter mon travail à l'université.Donc, dois-je mettre l'adresse mail de la fac?)

2/Comment je dois faire exactement pour publier mon service?(Dans ton tuto Mayzz,tu utilise des fichiers .asmx alors que moi mes fichiers sont des fichiers .aspx, y a-t-il une différence pour la publication?)J'ai bossé avec VS.Net 2008 de la boîte. Si je télécharge la version d'essai de VWD, est-ce que ça peut suffire?

Merci d'avance

Forza Taraji!!
Commenter la réponse de mrassaa

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.