2014-01-23 17 views
0

我需要按照十進制類型的字段進行過濾。我如何?如何使用。在十進制字段中包含LINQ

以下是我對字符串字段做:

cartaoCredito.strCartaoCreditoDescricao.ToUpper().Contains(strParam.ToUpper()) 

這裏是我的方法:

public List<CartaoCredito> GetCartaoCreditoByintCodigoGrupoUsuarioByFiltro(int intCodigoGrupoUsuario, string strParam) 
    { 
     return (from cartaoCredito in _DatabaseContext.CartaoCredito 
       where cartaoCredito.intCodigoGrupoUsuario == intCodigoGrupoUsuario && (cartaoCredito.strCartaoCreditoDescricao.ToUpper().Contains(strParam.ToUpper())) 
       select cartaoCredito).ToList(); 
    } 
+0

它不清楚你想在這裏做什麼。 – Maess

+0

'Contains()'也應該與數字原語一起工作。它以什麼方式不適合你? – David

+0

我很困惑 - 你想過濾到在給定list_中有值的行嗎? –

回答

1

我想你想給string.Contains調用轉換爲十進制值,從而贏得不工作,因爲decimal沒有Contains方法,如string

如果你有集合decimals,你想看看是否值是列表中,這樣做:

List<decimal> list = {list of decimals} 

var query = {source}.Where(x => list.Contains(x.{decimal property}); 

,或者如果你只是有一個值,你不需要Contains。只是做

decimal decParam = {some value}; 
var query = {source}.Where(x => x.{decimal property} = decParam); 
相關問題