У меня есть GridView. Мое приложение подключается к базе данных MySql, собирает данные и отображает их в GridView, но это не так. Когда я делаю это так же в приложении Windows Forms, он заполняет DataGridView, и проблем нет. Но когда я запускаю приложение ASP.NET в любом браузере - он показывает ярлык и кнопку, но когда я нажимаю кнопку «Заполнить сетку» - она не отображает GridView. Я скопировал MySql.Data.dll и System.Data.dll в каталог «bin». Ошибка компиляции отсутствует. Строка подключения в порядке.Приложение ASP.NET не отображает заполненный GridView после сбора данных из базы данных MySql
Это мое приложение ASP.NET:
<%@ Page Language="C#" %>
<%@ Import Namespace = "MySql.Data.MySqlClient" %>
<%@ Assembly Name = "MySql.Data" %>
<%@ Import Namespace = "System.Data" %>
<%@ Assembly Name = "System.Data" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
protected void btnFillData_Click(object sender, EventArgs e)
{
MySqlConnection conn = new MySqlConnection("Server=127.0.0.1;Database=autolot;Uid=root;Pwd=pass;");
conn.Open();
MySqlCommand cmd = new MySqlCommand("select * from inventory;", conn);
MySqlDataReader dr = cmd.ExecuteReader();
DataTable dt = new DataTable();
dt.Load(dr);
conn.Close();
carsGridView.DataSource = dt;
carsGridView.DataBind();
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>Hello World!</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Label ID="lblInfo" runat="server"
Text="Click on the button to fill the grid">
</asp:Label>
<br />
<br />
<asp:GridView ID="carsGridView" runat="server">
</asp:GridView>
<br />
<asp:Button ID="btnFillData" runat="server" Text="Fill grid" />
</div>
</form>
</body>
</html>
попытайтесь отладить свой код с помощью точек останова, которые ваш читатель имеет некоторые значения или нет? –