asp.net 中linq to sql 的使用
var MatarialQuery = from kcjh in materialdc.KCHJByQYDHs
select new
{
sl = Convert.ToInt32(kcjh.SL),
wl = kcjh.WL,
company=kcjh.Tag.Contains("<ID")?ma.Tag.Split(',')[0].Replace("<ID:",""):"经营"};
其中表materialdc.KCHJByQYDHs的Tag有的是空,有的是"<ID:销售,510023>"这种样式的,还有其他样式的,选择的时候我就想处理以“<ID”开头的信息,并将其中的“销售”和,后面的“510023”,选择出来,我想用上面的语句,但是提示出错,出错信息如下:
无法识别的表达式节点: ArrayIndex,
怎么回事,这种情况下不能用kcjh.Tag.Contains("<ID")吗?那我该怎么用?谢谢
------解决方案--------------------where kcjh.Tag!=null&&Regex.IsMatch(kcjh.Tag.ToString().Trim(),@"^<ID:\w+[,,]\d+>$")
------解决方案--------------------错误信息太少,不好判断吧
------解决方案--------------------你的表达式里面那个ma是什么啊,没看明白啊
ma.Tag.Split(',')[0].Replace("<ID:","")
------解决方案--------------------不要在Linq语句中处理,先取出来再判断处理不就行了。