我有一个页面在此代码上的“和”运算符错误之前抛出缺少操作数:
string filtre = (Request["pn"] == "Tous" ? "pn=pn" : "pn='" + Request["pn"] + "'");
filtre += (Request["dep"] == "Tous" ? "" : " and erreur=" + Request["dep"]);
filtre += (Request["err"] == "Tous" ? "" : " and reference=" + Request["err"]);
filtre += (Request["comp"] == "Tous" ? "" : " and compagnie='" + Request["comp"] + "'");
filtre += (Request["prob"] == "on" ? " and not reference=58" : "");
StringBuilder tbltxt = new StringBuilder();
foreach (DataRow ligne in Datatbl.Tables["ins"].Select(filtre, (Request["tridep"] == "on" ? "erreur" : "datecr")))
foreach 行抛出此错误。
即使出现此错误,页面也会正确呈现。即使用户没有收到错误页面,通过电子邮件收到此错误也很烦人。
有人可以帮我弄这个吗?
谢谢
编辑:
1-此代码生成一个 Excel 工作表
2-并非所有加载页面的计算机都会生成此错误
3- 我们使用的 Excel 是 Excel 2010
4-每次生成错误时都会抛出此错误 3 次
这是完整的错误消息:
消息:引发了“System.Web.HttpUnhandledException”类型的异常。
System.Data.SyntaxErrorException:语法错误:“与”运算符之前缺少操作数。System.Data.ExpressionParser.Parse() System.Data.DataExpression..ctor(DataTable table, String expression, Type type) System.Data.Select..ctor(DataTable table, String filterExpression, String sort, DataViewRowState recordStates) 系统。 Data.DataTable.Select(String filterExpression, String sort)inspectionrapport.fonctions.Page_Load() in c:\Projets\Intranet\Timesheets\Timesheets\Rapports\insptest\inspectionrapport.aspx.cs:line 45 System.Web.Util.CalliHelper .ArglessFunctionCaller(IntPtr fp, Object o) System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e) System.Web.UI.Control.OnLoad(EventArgs e) System.Web.UI.Control.LoadRecursive() System .Web.UI.Page.ProcessRequestMain(布尔包含StagesBeforeAsyncPoint,