Я просматривал в Интернете способ отображения определенного контента из таблицы данных sql. Я надеялся, что смогу отобразить столбец Content в соответствии со значением столбца Id. alt text http://photos-h.ak.fbcdn.net/hphotos-ak-snc3/hs031.snc3/11852_1241994617732_1465331687_655971_2468696_n.jpgОтображение конкретных данных на веб-странице asp.net из таблицы экспресс-данных microsoft sql
ответ
Если вы хотите иметь только одно значение из одной записи, вы можете использовать ExecuteScalar
метод SqlCommand
класса:
string title = null;
using (SqlConnection conn = new SqlConnection("your-connection-string"))
using (SqlCommand cmd = new SqlCommand(
"select ContentTitle from {put table name here} where id = 4", conn))
{
conn.Open();
title = (string)conn.ExecuteScalar();
}
if (!string.IsNullOrEmpty(title))
{
// assign title to suitable asp.net control property
}
Если вы хотите быть в состоянии сделать это для различных идентификаторов, не просто объединяет новую строку sql. Я повторю: не просто объединяет новую строку sql. Используйте параметры вместо:
string title = null;
using (SqlConnection conn = new SqlConnection("your-connection-string"))
using (SqlCommand cmd = new SqlCommand(
"select ContentTitle from {put table name here} where id = @id", conn))
{
SqlParameter param = new SqlParameter();
param.ParameterName = "@id";
param.Value = yourIdGoesHere;
cmd.Parameters.Add(param);
conn.Open();
title = (string)conn.ExecuteScalar();
}
if (!string.IsNullOrEmpty(title))
{
// assign title to suitable asp.net control property
}
Обновление
Пример страницы ASPX. Сначала некоторые разметки (скажем, файл называется example.aspx):
<body>
<form id="Form1" runat="server">
Title: <asp:Label id="_titleLabel"
Text="{no title assigned yet}"
runat="server"/>
</form>
</body>
... и в фоновом коде (который назвал бы example.aspx.cs, я включил только событие Page_Load для простота):
protected void Page_Load(object sender, EventArgs e)
{
int id;
try
{
if (int.TryParse(Request.QueryString["id"], out id))
{
_titleLabel.Text = GetContentTitle(id);
}
else
{
_titleLabel.Text = "no id given; cannot look up title";
}
}
catch (Exception ex)
{
// do something with the exception info
}
}
private static string GetContentTitle(int id)
{
using (SqlConnection conn = new SqlConnection("your-connection-string"))
using (SqlCommand cmd = new SqlCommand(
"select ContentTitle from {put table name here} where id = @id", conn))
{
SqlParameter param = new SqlParameter();
param.ParameterName = "@id";
param.Value = yourIdGoesHere;
cmd.Parameters.Add(param);
conn.Open();
return (string)conn.ExecuteScalar();
}
}
Отказ от ответственности: код записывается непосредственно в окно ответа и не тестировался (у меня нет доступа к среде разработки прямо сейчас), поэтому могут быть ошибки
Я уверен, что это работает. Я просто не знаю, как реализовать его на веб-странице example.aspx. Отправьте пример кода asp.net. –
О, и в каком файле я помещаю первый абзац кода CS, который вы указали. Мне всего 15 лет, и я пытаюсь узнать asp.net. –
Спасибо. Я попробую, когда у меня появится шанс. –
ссылка возврат ошибки 404 –
Что квест ион? Где изображение? –
Ссылка работает для меня. –