Динамический ввод в SQL-запрос Использование asp.net
У меня есть гиперссылка, которая должна печатать информацию из базы данных SQL. Но я не могу знать, как передать это значение гиперссылки в запрос SQL.
SqlConnection conn = new SqlConnection("Server=ILLUMINATI;" + "Database=DB;Integrated Security= true");
SqlDataAdapter ADP = new SqlDataAdapter("select * from News where Headlines= au_id", conn);
Я хочу получить значение au_id динамически, может кто-нибудь помочь мне с этим после нажатия на гиперссылку.
Это как когда я нажимаю на заголовки, я должен получать соответствующие новости.
2 ответа
Прежде всего, вы должны использовать LinkButton
вместо Hyperlink
control as hyperlink перенаправляет страницу на указанный URL. Но у LinkButton есть обработчик события Click. На этот клик вы можете получить идентификатор.
Ваш запрос будет выглядеть так...
SqlDataAdapter ADP = new SqlDataAdapter("select * from News where Headlines = " + au_id, conn);
Но было бы лучше, если вы используете Parameterized query to save yourself from a SQL Injection Attack
,
SqlDataAdapter ADP = new SqlDataAdapter("select * from News where Headlines = @au_id", conn);
ADP.SelectCommand.Parameters.Add("@au_id", System.Data.SqlDbType.Int, 4, "au_id");
Я не уверен, что именно вы хотите, но вот простой пример:
using ( command = new SqlCommand( ("select * from News where Headlines=" + au_id ), conn) //send au_id as string variable
{
DataTable outDT = new DataTable();
SqlDataAdapter adapter = new SqlDataAdapter(command);
adapter.Fill(outDT);
return outDT; // Your DataTable
}