c#
  • asp.net
  • 2014-02-13 83 views 4 likes 
    4

    我有這樣的代碼:語法錯誤:缺少操作數之前「=」操作

    DataRow[] drClaimCPT; 
    drClaimCPT = dtCpt.Select("CLAIM_NUMBER == " + claimNo + ""); 
    

    當我跑,我得到了一個錯誤:

    Syntax error: Missing operand before '=' operator. 
    

    我做了什麼錯?

    +1

    or'dtCpt.AsEnumerable()。其中​​(r => r.Field (「CLAIM_NUMBER」)== claimNo)' –

    回答

    10

    這應該爲你工作,如果類型是整數字符串

    drClaimCPT = dtCpt.Select("CLAIM_NUMBER = " + claimNo + ""); 
    

    drClaimCPT = dtCpt.Select("CLAIM_NUMBER = '" + claimNo + "'"); 
    
    +0

    謝謝@Acme。它的工作..... – Sharon

    +1

    打敗我2秒':)' –

    +0

    和布爾字段? –

    1

    我假設你claimNonumber,正確的語法如下:

    dtCpt.Select("CLAIM_NUMBER = " + claimNo + ""); 
    

    DataTable.Select method的方式使用具有DataColumn.Expression property相同的規則。

    如果你的claimNostring,你應該使用單引號。

    dtCpt.Select("CLAIM_NUMBER = 'claimNo'"); 
    

    文檔;

    User-Defined Values

    User-defined values may be used within expressions to be compared with column values. String values should be enclosed within single quotation marks

    1

    您的實際問題是使用雙 '=' - 這是編碼等於 - rememebr它是SQL等於 - 因此,只有它應該是 「CLAIM_NUMBER = claimNo」,而不是「CLAIM_NUMBER == claimNo 」。

    相關問題