我有TableA,有3列ColA, ColB, ColC。我正在開發一個如下所示的查詢函式,因為我想使如果ValueB & ValueC為空,或string.Empty,那么ColB, ColC可能不包括在查詢條件中.....
IList< TableA> Query(objectValueA,stringValueB,string ValueC)
var result=(from TableA TA in entity.TableA
where TA.ColA==ValueA
&&(string.IsNullOrWhiteSpace(ValueB)?1==1:TA.ColB==ValueB)
&&(string.IsNullOrWhiteSpace(ValueC)?1==1:TA.ColC==ValueC)
select TA)。)
但是我在執行這一部分時得到了一個 "System.NotSupportedException "的例外:
string.IsNullOrWhiteSpace(ValueB)
誰能給我一個正確的方法來制作它呢?
對不起,我是一個臺灣人,所以我遇到的錯誤資訊包含了中文單詞。
uj5u.com熱心網友回復:
有條件地組成你的查詢。 從基礎查詢開始:
var query = entity.TableA
.Where(ta => ta.ColA == ValueA)。
當其他引數值不是空值或空白時,再在查詢的基礎上進行構建:
if(!string.IsNullOrWhitespace(ValueB))
{
query = query.Where(ta => ta.ColB == ValueB);
uj5u.com熱心網友回復:
代替使用string.IsNullOrWhiteSpace方法。你可以像下面這樣檢查
(ValueB == null || ValueB == ""/span>)
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/309882.html
標籤:
