Indexoutofrangeexception :в позиции 0 нет строки
Я очень новичок в C#, поэтому просматривал некоторые проекты в интернете.Я не смог запустить этот проект
Я получаю следующую ошибку, когда нажимаю на кнопку входа в систему:
В позиции 0 нет строки
В частности, из изображения 3.ImageUrl = HDT. Rows[0] ["изображение"].ToString (); строка.
DS_HOUSE.HOUSE_SELECTDataTable HDT = new DS_HOUSE.HOUSE_SELECTDataTable(); DS_HOUSETableAdapters.HOUSE_SELECTTableAdapter HAdapter = new DS_HOUSETableAdapters.HOUSE_SELECTTableAdapter(); protected void Page_Load(object sender, EventArgs e) { UDT = UAdapter.Select_By_UID(Convert.ToInt32(Session["uid"].ToString())); HDT = HAdapter.Select_By_SNAME_BLOCKNO(UDT.Rows[0]["societyname"].ToString(), Convert.ToInt32(UDT.Rows[0]["Houseid"].ToString())); Image3.ImageUrl = HDT.Rows[0]["image"].ToString(); lblsname.Text = HDT.Rows[0]["sname"].ToString(); lblbno.Text = HDT.Rows[0]["blockno"].ToString(); lbltype.Text = HDT.Rows[0]["type"].ToString(); ViewState["HID"] = HDT.Rows[0]["HID"].ToString(); }
Я прилагаю полный исходный код проекта и файл резервной копии базы данных .Пожалуйста, попробуйте запустить вашу систему, так как я не имею подробных знаний о проекте, будучи новичком
[Исходный код проекта с файлом резервной копии базы данных прилагается здесь]
Что я уже пробовал:
Я попытался поместить код в блок if с помощью
protected void Page_Load(object sender, EventArgs e) { lblsell.Text = ""; UDT = UAdapter.Select_By_UID(Convert.ToInt32(Session["uid"].ToString())); HDT = HAdapter.Select_By_SNAME_BLOCKNO(UDT.Rows[0]["societyname"].ToString(), Convert.ToInt32(UDT.Rows[0]["Houseid"].ToString())); if (HDT.Rows.Count > 0) { Image3.ImageUrl = HDT.Rows[0]["image"].ToString(); lblsname.Text = HDT.Rows[0]["sname"].ToString(); lblbno.Text = HDT.Rows[0]["blockno"].ToString(); lbltype.Text = HDT.Rows[0]["type"].ToString(); ViewState["HID"] = HDT.Rows[0]["HID"].ToString(); } }
Я смог войти в систему, однако мне не удалось получить подробную информацию из таблицы общества.