F
fiza
I need to build a form that will take in string value from dropdowns
for:
sort_colum_name,
search_column_name,
table_name
and textbox for search_text
I know this is possible using expression trees, but somehow cant form
the statements. Please help
Here's what I have so far:
private static List<T> GetSortedData<T>( string sortColumnName)
{
var type = typeof(T);
var property = type.GetProperty(sortColumnName);
var parameter = Expression.Parameter(type, "p");
var propertyAccess =
Expression.MakeMemberAccess(parameter, property);
var orderByExp = Expression.Lambda(propertyAccess,
parameter);
MethodCallExpression resultExp =
Expression.Call(typeof(Queryable), "OrderBy", new Type[] { type,
property.PropertyType }, WHAT_SHOULD_BE_HERE,
Expression.Quote(orderByExp));
return
(List<T>)Expression.Lambda(resultExp).Compile().DynamicInvoke();
}
for:
sort_colum_name,
search_column_name,
table_name
and textbox for search_text
I know this is possible using expression trees, but somehow cant form
the statements. Please help
Here's what I have so far:
private static List<T> GetSortedData<T>( string sortColumnName)
{
var type = typeof(T);
var property = type.GetProperty(sortColumnName);
var parameter = Expression.Parameter(type, "p");
var propertyAccess =
Expression.MakeMemberAccess(parameter, property);
var orderByExp = Expression.Lambda(propertyAccess,
parameter);
MethodCallExpression resultExp =
Expression.Call(typeof(Queryable), "OrderBy", new Type[] { type,
property.PropertyType }, WHAT_SHOULD_BE_HERE,
Expression.Quote(orderByExp));
return
(List<T>)Expression.Lambda(resultExp).Compile().DynamicInvoke();
}