Почему прямоугольник не рисовал? Есть ли ошибка в моем коде? Я пытаюсь создать прямоугольник через SqlDataReader в то время как пункт ..Прямоугольник не рисовал через SQLDataReader, а статья
private void PrintsDoc (object sender, PrintPageEventArgs e)
{
Graphics g = e.Graphics;
StringFormat sf = new StringFormat();
sf.Alignment = StringAlignment.Center;
sf.LineAlignment = StringAlignment.Near;
Font fontStyle = new Font ("Times New Roman", 30);
Font fontStyle2 = new Font ("Times New Roman", 10);
g.DrawString ("Trade Confirmation", fontStyle, Brushes.Black, e.MarginBounds, sf);
g.DrawString ("\n\n\nTrade Date: " + dt + "\nPrint Date: " + DateTime.Now.ToString(), fontStyle2, Brushes.Black, e.MarginBounds, sf);
SqlConnection conn = new SqlConnection("Server=WORKERCOMP\\SQLEXPRESS;" + "Database=database;" + "User ID=uid;" + "Password=pwd;" + "Trusted_Connection=yes;");
conn.Open();
int i = 0, j = 0;
SqlCommand cmd = new SqlCommand("SELECT COLUMN_NAME, DATA_TYPE FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'dbo.TRADE'", conn);
SqlDataReader rdr = cmd.ExecuteReader();
while (rdr.Read()) {
Rectangle rec = new Rectangle (new Point (40 + i, 250), new Size (200, 25));
g.DrawRectangle (Pens.Black, rec);
g.DrawString (rdr.GetString(0 + j), fontStyle2, Brushes.Black, rec, sf);
i = i + 215;
j = j + 1;
}
e.HasMorePages = false;
conn.Close();
}
Go отладки. Поместите точки останова, выполните свой код, проверьте свою переменную. Если 'while()' не выполняется, ваш запрос не дает никаких результатов. – CodeCaster
Эй, я тестировал этот SQLCommand в SQL Server Management Studio, и он имеет результаты. Поэтому я думаю, что предложение while должно выполняться. Но почему прямоугольник не рисовал –
Вы уверены, что попробовали его в SSMS? TABLE_NAME не включает SCHEMA_NAME. –