解决用户Linq自定义组合查询
解决Linq自定义组合查询?看起来似乎是个不太难的问题。但很多人仍然会卡在这里不知如何下手,今天我就用我的经历来给大家做一个例子。
当年,俺被误导,说是怎么实现Linq自定义组合捏?因为Linq是预编译滴,没有办法想拼一个sql字符串出来,让我纠结很久,但是,我觉得微软的人应该比较厉害,所以我本着“有困难要上,没有困难制造困难也要上”的原则,在还没有熟悉LINQ TO ADO.NET的情况下,我觉得决定在最近的我自己独立完成小项目里使用ASP.NET MVC + ADO.NET EF。
一般的信息系统都有一个组合查询的功能,我很快用jquery做了这样一个功能。

/// /// 条件
///
public class Condition
{
/// /// 字段
///
public string Field { get; set; }
/// /// 表达式
///
public string Operator { get; set; }
/// /// 值
///
public string Value { get; set; }
/// /// 关系
///
public string Relation { get; set; }
/// ///
///
///
///
///
///
///
public static Condition[] BuildConditions(string[] fileds,string[] operators,string[] values,string[] relations)
{
if (fileds == null || operators == null || values == null || relations == null)
{
return null;
}
Condition[] conditions = new Condition[fileds.Length];
try
{
for (int i = 0; i < conditions.Length; i++)
{
conditions[i] = new Condition()
{
Field = fileds[i],
Operator = operators[i],
Value = values[i],
Relation = relations[i]
};
}
}
catch
{
return null;
}
return conditions;
}
}

浙公网安备 33010602011771号