【发布时间】:2012-07-27 19:22:52
【问题描述】:
我需要动态选择我的列,但我不提前知道列的类型。我有一个字符串,如果它们包含该字符串,我想搜索所有列,将非字符串转换为字符串以进行比较。
string format = "Convert.ToString({0}).Contains(@0)";
Model.Where(String.Format(format, columnName), searchString);
它在可空类型上中断,但这应该没问题。我可以使用 HasValue 和 Value 然后转换为字符串。为此,我需要使用 typeof 检查类型是否为 Nullable。所以我写了一个大的讨厌的字符串来传递给动态 linq,它在typeof 上坏了我试图写一个表达式树,但我没有得到任何结果。有什么方法可以做我想做的事吗?
【问题讨论】:
标签: c# linq expression-trees dynamic-linq