using System.Collections.Generic;
using System.Linq.Expressions;
public class ScriptArgumentsTemplate
private IOrderedQueryable<AbstractClass> itemsQuery;
public IReadOnlyList<AbstractClass> Items { get; internal set; }
public void By<TKey>(Expression<Func<AbstractClass, TKey>> expression)
itemsQuery = itemsQuery == null ? Items.AsQueryable().OrderBy(expression) : itemsQuery.ThenBy(expression);
public abstract class AbstractClass
public string Model { get; }
public class Car : AbstractClass
public int Score { get; }
public class Truck : AbstractClass
public int Wheight { get; }