Provider or not provider

cs_elpens Messages postés 260 Date d'inscription vendredi 2 décembre 2005 Statut Membre Dernière intervention 3 novembre 2007 - 22 août 2006 à 11:43
mdemo Messages postés 90 Date d'inscription mardi 21 mars 2006 Statut Membre Dernière intervention 10 mai 2010 - 27 août 2006 à 15:12
Voilà quelques jours que je n'arrive pas à trouver de réponse clair concernant les providers

En effet, selon les colonnes de mon gridView, le compilateur m'avertit comme suit :

An OLE DB Provider was not specified in the ConnectionString.  An example would be, 'Provider=SQLOLEDB;'

Or, précédement, j'avais spécifé un provider, sauf qu'il me mettait une erreur lors de l'update :

Must declare the variable [mailto:'@xyz' '@xyz']   

Je ne sais vraiment plus comment continuer.
Y a-t-il quelqu'un ayant une grande connaissance sur les provider--grid--etc. afin d'éclairer un minimum ma lanterne?

Merci d'avance et je vous souhaite une excellente journée

 ElpenS

5 réponses

cs_elpens Messages postés 260 Date d'inscription vendredi 2 décembre 2005 Statut Membre Dernière intervention 3 novembre 2007
22 août 2006 à 11:52
Mon soucis vient également du fait que je ne sais pas très bien comment réagissent les colonnes. En effet, faut-il traiter différement les boundfield des templates,... et ainsi de suite

Merci

 ElpenS
0
mdemo Messages postés 90 Date d'inscription mardi 21 mars 2006 Statut Membre Dernière intervention 10 mai 2010
22 août 2006 à 16:58
Bonjour,


Quel ConnectionString as-tu dans ton web config ?


Pour ce qui est de @xyz, ta requête sql demande certainement xyz en paramètre afin de faire l'update de ce champ. Si tu ne le fournis pas tu obtiens donc ce type de message.


 
0
cs_elpens Messages postés 260 Date d'inscription vendredi 2 décembre 2005 Statut Membre Dernière intervention 3 novembre 2007
23 août 2006 à 08:02
Bonjour,

Merci déjà pour ton soutient. Voilà ce que je fait:

Ici, mon gridView contenant un dropDownList ayant une datasource en mode edition.

<

asp:GridView
ID="procGrid"
runat="server"DataSourceID="SqlDataSourceGrid">
<Columns>
   <asp:TemplateField
HeaderText="Command Name"
SortExpression="CommandName">
   <EditItemTemplate>
         <asp:DropDownList
ID="dropDownCommand"
runat="server"
DataSourceID="SqlDataGetCommand"
DataValueField="idCommand"
            DataTextField="CommandName"
AutoPostBack="True"
AppendDataBoundItems="True"
OnSelectedIndexChanged="dropDownCommand_SelectedIndexChanged"
SelectedValue='<%# Bind("idCommand") %>
'></asp:DropDownList>
   </EditItemTemplate>
<ItemTemplate>
   <asp:Label
ID="commandLbl"
runat="server"
Text='<%# Bind("CommandName") %>
'></asp:Label>
</ItemTemplate>
</asp:TemplateField>Ensuite, voilà ma dataSource (SqlDataSourceGrid), qui selectionne avec une procedure stockée avec comme agrument une dropDownList(DropDownProcNum), et qui devrait updater mon champs Command avec comme parametre l'id de la dropDownList dropDownCommand.

<

asp:SqlDataSource
ID="SqlDataSourceGrid"
runat="server"
ConnectionString="<%$ ConnectionStrings:AAAConnectionStr %>
" SelectCommand="AAA_getProcByNumber;1"
OldValuesParameterFormatString="original_{0}"
UpdateCommand="UPDATE [Sequence] SET [Command] = @idCommand WHERE [Order]= @original_Order AND [ProcNumber] = @original_ProcNumber"
ProviderName="<%$ ConnectionStrings:AAAConnectionStr.ProviderName %>
"
SelectCommandType="StoredProcedure">
<SelectParameters>
   <asp:ControlParameter
ControlID="DropDownProcNum"
Name="ProcNum"
Type="String"
PropertyName="SelectedValue"
/>
</SelectParameters>
<UpdateParameters>
   <asp:ControlParameter
ControlID="dropDownCommand"
Name="idCommand"
Type="int64"
/>
</UpdateParameters>
</asp:SqlDataSource>
Et voilà l'erreur obtenue quand je clique sur update :

Could not find control 'dropDownCommand' in ControlParameter 'idCommand

J'ai testé beaucoup de manière de procéder mais je pense que celle-là doit être la plus proche du correct. Mais je vous garantis que j'ai eu énormément de message d'erreur différents.

Merci pour votre aide, j'en ai grandement besoin.
Bonne journée a tous

 ElpenS
0
cs_elpens Messages postés 260 Date d'inscription vendredi 2 décembre 2005 Statut Membre Dernière intervention 3 novembre 2007
23 août 2006 à 14:48
Apres quelques heures de recherches supplémentaire, je suis arrivé un peu plus loin, mais j'ai toujours un ennuis

Voilà comment j'ai procedé :

J'ai creer une sub RowUpdating(sender, e) Handles myGrid.RowUpdating qui creer une variable de Session

Ensuite, dans ma dataSource, j'ai changé le paramètre control en :

<asp:SessionParameter
Name="idCommand"
SessionField="idCommand"
Type="Int64"
/>
...

Lorsque je débug mon programme, je vois que la variable de session idCommand prend la bonne valeur.

Je vois que dans ma dataSource, la valeur du parametre est correcte :
  sqlDataSourceGrid.UpdateParameters.Item(0).Type.Int64  --> idCommand

Mais ensuite, l'erreur  Must declare the variable [mailto:'@idCommand' '@idCommand'].

Alors, je ne comprend pas pourquoi il ne la résoud pas

Merci

 ElpenS
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
mdemo Messages postés 90 Date d'inscription mardi 21 mars 2006 Statut Membre Dernière intervention 10 mai 2010
27 août 2006 à 15:12
Bonjour,


Je suis un peu trop jeune en programmation et je ne veux pas te faire perdre de temps. Donc fais attention à mes commentaires!


Je n'ai jamais utilisé de sqldatasource, ce qui n'arrange rien. Par contre j'ai mis en place pas mal d'objectdatasources avec des stores procedures, et ça marche sans problème quand je mets un dropdownlist en édition (certes mes ddl ne sont pas liés à des bases, mais je ne suis pas sûr que ton pb soit là).


Bref, pas facile de t'aider, mais je viens de remarquer un truc qui me surprend : ton SET [Command].


Ton champ ne serait pas plutôt [idCommand] d'après ce que je vois ? De plus Command serait bien un mot réservé source de pb...

Let me know!


 
0
Rejoignez-nous