【问题标题】:A new expression requires () or... in LINQLINQ 中的新表达式需要 () 或...
【发布时间】:2009-12-23 12:39:12
【问题描述】:

这让我发疯了。

我有以下代码,当单击按钮时,gridview 将根据客户在文本框中输入的数字 (tbxHowMany) 填充数据。

 protected void btnDisplayTopReport_Click(object sender, EventArgs e)
    {
      if (radPa.Checked)       
      {

            CompleteWeightsDataContext db = new CompleteWeightsDataContext
            int max = 0;
            if (int.TryParse(tbxHowMany.Text, out max))
            {
                var queryPa = db.tblOnlineReportingCOMPLETEWeights
                    .Where (x => x.MaterialLevel == "Primary" && x.MaterialText == "Paper")
                    .OrderByDescending (x => x.ProductPercentage).Take(max);

                GridView1.DataSourceID = "queryPa";
                GridView1.DataBind();
            }
        }
       else if (radGl.Checked)
         {
              CompleteWeightsDataContext db = new CompleteWeightsDataContext
            int max = 0;
            if (int.TryParse(tbxHowMany.Text, out max))
            {
                var queryGl = db.tblOnlineReportingCOMPLETEWeights
                    .Where (x => x.MaterialLevel == "Primary" && x.MaterialText == "Glass")
                    .OrderByDescending (x => x.ProductPercentage).Take(max);

                GridView1.DataSourceID = "queryGl";
                GridView1.DataBind();
            }
         }
       }

不幸的是,我在第一个 int 上不断收到“新表达式需要 ()、[] 等”。

谁能向我解释错误和/或我做错了什么以及如何解决这个问题?

为这个很可能是模糊的问题道歉。

【问题讨论】:

  • 抱歉 - "int max = 0;" int 导致错误。

标签: c# .net compiler-errors


【解决方案1】:

您的错误实际上在前一行(它显示在该行上,因为前一行没有正确终止,所以int max... 是编译器首先意识到出现问题的地方。

错误在这里:

CompleteWeightsDataContext db = new CompleteWeightsDataContext

应该是:

CompleteWeightsDataContext db = new CompleteWeightsDataContext();

【讨论】:

  • 我不敢相信我错过了!我想我需要一些午餐!感谢大卫的一双新鲜眼睛。
猜你喜欢
  • 1970-01-01
  • 2019-11-06
  • 1970-01-01
  • 1970-01-01
  • 2010-09-28
  • 1970-01-01
  • 1970-01-01
  • 2014-05-27
  • 1970-01-01
相关资源
最近更新 更多