我在DB中有一个名为Rule的列用于存储一行c#代码,我想将它们检索到.NET程序。问题是,由.net程序无法识别由lambda表达式检索的行,因为其中包含c#类名。那个动态的linq限制是不能实现的呢?
示例1: 从DB中检索字符串:
Regex.IsMatch(string.Concat(fieldValue1.Where(q => !Path.GetInvalidFileNameChars().Contains(q))), @"\d{11}")
使用上述检索字符串的Lambda Expr:
var result = fieldInfo.Where(RetrievedstringfromDB, Value)
错误是
“XXX”类型中没有属性或字段“正则表达式”
我发现最接近的事情是使用Roslyn动态运行整个事情,但公平地说,对于我正在进行的项目来说,这可能不是一个好的解决方法,任何灯光/想法都会非常感激!