I have written a LINQ query clause,But a error raise up.Can anyone help me out.Thanks in advance:
list = (from cr in dt.AsEnumerable()
select new Cards
{
MemberNumber = cr.Field<string>("MemberNumber"),
if( cr.Field<int>("CardState")==0)
{
CardState ="aaa";
}
if( cr.Field<int>("CardState")==1)
{
CardState ="bbb";
}
if( cr.Field<int>("CardState")==2)
{
CardState ="ccc";
}
if( cr.Field<int>("CardState")==3)
{
CardState ="ddd";
}
if( cr.Field<int>("CardState")==4)
{
CardState ="eee";
}
}).ToList<Cards>();
You can’t have branching logic like that inside an initializer. You could write it as a series of ternary operators, however:
Although a better solution may be to separate out that code block into a separate function and call it from your initializer: