2

谁能帮我解决这种错误?

Description: An error occurred during the compilation of a resource required to service this request. Please review the following specific error details and modify your source code appropriately. 

Compiler Error Message: CS1002: ; expected

这似乎导致了错误:

Line 69:                    string code = grdViews.DataKeys[index].Value.ToString();
Line 70:                     
Line 71:                        IEnumerable<DataRow> query = from i in dt.AsEnumerable()where i.Field<String>("Code").Equals(code)select i;
Line 72:                        DataTable detailTable = query.CopyToDataTable<DataRow>();
Line 73:                         DetailsView1.DataSource = detailTable;

这是源代码:

protected void grdViews_RowCommand(object sender, GridViewCommandEventArgs e)
{
     if(e.CommandName.Equals("detail"))
     {
         int index = Convert.ToInt32(e.CommandArgument);
         string code = grdViews.DataKeys[index].Value.ToString();

         IEnumerable<DataRow> query = from i in dt.AsEnumerable()where i.Field<String>("Code").Equals(code)select i;
         DataTable detailTable = query.CopyToDataTable<DataRow>();
             DetailsView1.DataSource = detailTable;
         DetailsView1.DataBind();
         System.Text.StringBuilder sb = new System.Text.StringBuilder();
         sb.Append(@"<script type='text/javascript'>");
         sb.Append("$('#currentdetail').modal('show');");
         sb.Append(@"</script>");
         ScriptManager.RegisterClientScriptBlock(this, this.GetType(),
                               "ModalScript", sb.ToString(), false);
     }
}
4

1 回答 1

1

线

IEnumerable<DataRow> query = 
    from i in dt.AsEnumerable()where i.Field<String>("Code").Equals(code)select i;

无效。您需要在语句之间使用空格,如下所示:

IEnumerable<DataRow> query = 
    from i in dt.AsEnumerable()
    where i.Field<String>("Code").Equals(code)
    select i;
于 2013-08-01T00:40:34.447 回答