我使用從DataTable填充的數據控件來在應用程序中顯示圖像。現在我需要修改它以顯示來自不同DataTable的兩個圖像列表。因此添加了第二個DataList併爲第二個DataTable編碼。添加第二個數據表控件後出錯
我收到錯誤:
The Connection String Property has not been initialized.
代碼數據表的控制,第二個(edt
)生成錯誤:
DataTable dt = new DataTable();
using (Conn)
{
SqlDataAdapter ad = new SqlDataAdapter("SELECT QuestionID, Images2.ImageID, ImageFile, ImageContent, ImageName, SEQ_NUM from qimages join Images2 on qimages.imageid = images2.imageid where QuestionID = @QuestionID", Conn);
ad.SelectCommand.Parameters.Add("QuestionID", SqlDbType.BigInt).Value = Convert.ToInt32(Request["Id"]);
ad.Fill(dt);
}
dlImages.DataSource = dt;
dlImages.DataBind();
DataTable edt = new DataTable();
using (Conn)
{
SqlDataAdapter ed = new SqlDataAdapter("SELECT QuestionID, Images2.ImageID, ImageFile, ImageContent, ImageName, SEQ_NUM from eimages join EditedImages on eimages.imageid = editedimages.imageid where QuestionID = @QuestionID", Conn);
ed.SelectCommand.Parameters.Add("QuestionID", SqlDbType.BigInt).Value = Convert.ToInt32(Request["Id"]);
ed.Fill(edt);
}
EditImages.DataSource = edt;
EditImages.DataBind();
試圖改變所述第二控制使用其自己的連接串如建議。下面是第二個數據表中的新代碼,這仍然是拋出同樣未初始化錯誤:
string Constr = ConfigurationManager.ConnectionStrings["CS1"].ConnectionString;
SqlConnection Conn2 = new SqlConnection(Constr);
DataTable edt = new DataTable();
using (Conn2)
{
SqlDataAdapter ed = new SqlDataAdapter("SELECT QuestionID, EditImages.ImageID, ImageFile, ImageContent, ImageName, SEQ_NUM from eimages join EditImages on eimages.imageid = editimages.imageid where QuestionID = @QuestionID", Conn);
ed.SelectCommand.Parameters.Add("QuestionID", SqlDbType.BigInt).Value = Convert.ToInt32(Request["Id"]);
ed.Fill(edt);
}
EditImages.DataSource = edt;
EditImages.DataBind();
如果錯誤顯示連接字符串屬性尚未初始化,那麼顯示如何在您的問題中初始化連接字符串可能是個好主意。請仔細閱讀[MCVE](http://stackoverflow.com/help/mcve),因爲您的問題缺乏完整性原則。 – mason