J'essaie de récupérer des données entre deux dates que l'utilisateur sélectionnera dans les listes déroulantes.
J'ai essayé quelque chose: voici mon code. P>
string dateFrom = DropDownList1.Text.ToString(); string dateTo = DropDownList2.Text.ToString(); string myconstring = ConfigurationManager.ConnectionStrings["KanbanConnectionString"].ConnectionString; using (SqlConnection conn = new SqlConnection(myconstring)) { DataTable dat = new DataTable(); using (SqlCommand cmd = new SqlCommand("SELECT * FROM city.xls WHERE Date BETWEEN @dateFrom AND @dateTo")) { cmd.Parameters.AddWithValue("@dateFrom", dateFrom); cmd.Parameters.AddWithValue("@dateTo", dateTo); conn.Open(); SqlDataAdapter da = new SqlDataAdapter(); da.SelectCommand = cmd; da.Fill(dat); D2.DataSource = dat; D2.DataBind(); } }
3 Réponses :
conn.Open(); using (SqlCommand cmd = conn.CreateCommand("SELECT * FROM city.xls WHERE Date BETWEEN @dateFrom AND @dateTo")) { cmd.Parameters.AddWithValue("@dateFrom", dateFrom); cmd.Parameters.AddWithValue("@dateTo", dateTo); SqlDataAdapter da = new SqlDataAdapter(); da.SelectCommand = cmd; da.Fill(dat); D2.DataSource = dat; D2.DataBind(); }
Vous devez utiliser la connexion ouverte pour créer la commande ou créer la commande à l'aide de la connexion ouverte. Google la syntaxe de la bonne chose, mais essentiellement, vous ne connectez pas la commande avec la connexion.
Ajoutez l'initialisation de la connexion alors vous êtes prêt à partir :) p> p>
Ceci a fonctionné.
DateTime dateFrom = Convert.ToDateTime(DropDownList1.Text); DateTime dateTo = Convert.ToDateTime(DropDownList2.Text); string myconstring = ConfigurationManager.ConnectionStrings["KanbanConnectionString"].ConnectionString; using (SqlConnection conn = new SqlConnection(myconstring)) { DataTable dat = new DataTable(); string find = "SELECT * FROM city WHERE Date BETWEEN @dateFrom AND @dateTo"; using (SqlCommand cmd = new SqlCommand(find, conn)) { cmd.Parameters.AddWithValue("@dateFrom", dateFrom); cmd.Parameters.AddWithValue("@dateTo", dateTo); conn.Open(); SqlDataAdapter da = new SqlDataAdapter(); da.SelectCommand = cmd; da.Fill(dat); D2.DataSource = dat; D2.DataBind(); } }
Vérifiez que vous avez une chaîne de connexion appelée kanbanconnectionstring dans votre fichier de configuration
@Programnik oui je fais.
Vous manquez ce
cmd.connection = conn code>
N'utilisez pas AddWithValue