2012-01-24 2 views
0

Кто-нибудь знает, почему следующее не работает?Сообщение об ошибке компилятора: CS0021

C#:

public partial class Default : System.Web.UI.Page 
{ 
    SqlConnection connection; 
    SqlCommand command; 
    SqlDataReader reader; 

    protected void Page_Load(object sender, EventArgs e) 
    { 
     using (connection = new SqlConnection(ConfigurationManager.AppSettings["connString"])) 
     { 
      using (command = new SqlCommand("select col1, col2 from table1 where id = @id", connection)) 
      { 
       command.Parameters.Add("@id", SqlDbType.Int, 3).Value = 1; 
       connection.Open(); 

       using (reader = command.ExecuteReader()) 
       { 
        reader.Read(); 
        Div1.InnerHtml = reader.Read["col1"].ToString(); 
       } 
      } 
     } 
    } 
} 

HTML:

<div runat="server" id="Div1"></div> 

Ошибка:

Compiler Error Message: CS0021: Cannot apply indexing with [] to an expression of type 'method group' 
Line 32: Div1.InnerHtml = reader.Read["col1"].ToString(); 

ответ

9

Изменить этот

Div1.InnerHtml = reader.Read["col1"].ToString(); 

В этот

Div1.InnerHtml = reader["col1"].ToString(); 
0

как вы подаете неправильный индексатор на SqlDataReader. SqlDataReader

вы можете попробовать, как этот

Div1.InnerHtml = reader["your ColumnName"].ToString(); 

здесь он дает полную информацию о том, почему возникает это исключение ERRor cs0021

 Смежные вопросы

  • Нет связанных вопросов^_^