ASP.NET SelectParameter / Contrôle de l'utilisation de ce Paramètre
débutant à l'asp.net ici.
J'essaye de configurer un selectparameters et controlparameters basée sur la zone de texte contrôles web pour les plages de dates de récupérer des données sur un asp.net page.
SelectCommand="SELECT SUM(Turnover) AS TotalTurnover, (SUM(Turnover) /(SELECT COUNT(*) FROM (SELECT DISTINCT [Trade Date] FROM TradeSummary WHERE ([Trade Date] BETWEEN @T1 AND @T2)))) AS AverageTO FROM TradeSummary WHERE ([Trade Date] BETWEEN @T1 AND @T2)">
<SelectParameters>
<asp:ControlParameter ControlID="TradeDate1" DefaultValue="8-10-2012" Name="T1" Type="DateTime" PropertyName="Text" />
<asp:ControlParameter ControlID="TradeDate2" DefaultValue="8-11-2012" Name="T2" Type="DateTime" PropertyName="Text" />
</SelectParameters>
TradeDate1 et TradeDate2 reportez-vous à 2 contrôles de zone de texte que j'ai installé pour la date de prélèvement.
Je me demande comment je peut examiner les valeurs de @T1 @T2 afin de m'assurer que la requête ne soit transmis à la base de données est valide parce qu'il me semble que si j'avais été à eval("TotalTurnover"), puis je reçois un dbnull erreur.
Toute aide serait appréciée. Merci!
vous pouvez également passer le contrôle paraamters à partir de votre code derrière après avoir vérifié les valeurs.
OriginalL'auteur C.F. | 2012-08-22
Vous devez vous connecter pour publier un commentaire.
vous pouvez également passer le contrôle paraamters à partir de votre code derrière après avoir vérifié les valeurs. Ajoutez le code ci-dessous dans votre page load ou de tout autre événement de contrôle des e.g bouton )
oui, vous avez raison
Waqar, cela fonctionne parfaitement. Merci beaucoup! Si vous ne vous occupez de moi aller hors sujet un peu, le selectcommand exécuter à l'encontre de la DB avant d'ajouter une méthode appelée dans le code-behind? Je suis un peu confus quand cette requête s'exécute? Doit-on définir des valeurs par défaut pour récupérer zéro ou dataset par défaut avant d'AJOUTER appelée??
Si je comprends votre question clairement. Vous pouvez le faire dans n'importe quel ordre. d'abord définir la commande sélectionner ou ajouter des paramètres. comme cette " SqlDataSource1.SelectCommand = "votre commande"; SqlDataSource1.SelectParameters.Ajouter ...... "Vous pouvez l'ajouter dans n'importe quel ordre. Si cette réponse est utile alors n'oubliez pas de marquer comme réponse. Merci.
J'ai fait la même chose. Cependant, pour gridview les données de liaison avant qu'il n'atteigne le bouton et donc en me jetant une erreur. Pouvez-vous jeter un oeil à ce stackoverflow.com/questions/16716210/... question?
OriginalL'auteur Waqar Janjua
J'aimerais vérifier les valeurs d'entrée des zones de texte sur un événement click d'un bouton, et si ils sont tous ok aller sur le databind la source de données. Puis sur la sélection de l'événement de la source de données que j'avais définir les paramètres nécessaires en utilisant datsource.SelectParameters["T1"].Valeur par défaut = date;
OriginalL'auteur vsdev