ASP.NET MVCには2つの機能があります。これらの関数をGenericクラス(クラス)に変換するにはどうすればよいですか?ジェネリックTクラスを作成するには?
public JsonResult CreateProduct(List<Product> Products, List<GroupExpression> GroupExpression)
{
List<GroupExpression> InvalidGroupExpression = ValidateColumnInList(Products, GroupExpression);
if (InvalidGroupExpression.Count() <= 0)
{
string[] Fields = GroupExpression.Select(x => x.ExpressionName).ToArray();
var LambdaExp = GroupExpressionBuilder.GroupByExpression<Product>(Fields);
IEnumerable<Product> DuplicateProducts = Products.GroupBy(LambdaExp.Compile()).Where(g => g.Skip(1).Any()).SelectMany(g => g).ToList();
IEnumerable<object> Indices = DuplicateProducts.Select<Product, object>(x => Products.IndexOf(x)).ToList();
return Json(new { Success = true, Indices }, JsonRequestBehavior.AllowGet);
}
else
{
//return Json(new { Message = false });
return Json(new { Success = false, InvalidGroupExpression }, JsonRequestBehavior.AllowGet);
}
}
public List<GroupExpression> ValidateColumnInList(List<Product> Products, List<GroupExpression> GroupExpression)
{
//bool IsValid = true;
List<GroupExpression> TempGroupExpression = new List<GroupExpression>();
foreach (var GrpExpression in GroupExpression)
{
bool IsContainColumn = typeof(Product).GetProperties().Any(column => column.Name == GrpExpression.ExpressionName);
if (!IsContainColumn)
{
TempGroupExpression.Add(GrpExpression);
//IsValid = false;
}
}
//GroupExpression.RemoveAll(x => TempGroupExpression.Contains(x));
//return IsValid;
return TempGroupExpression;
}
上記の機能では、私はList Productsを変換したい、List GroupExpressionはパラメータに変換する。私はTのクラスに新しいです。これはどうすればいいですか?
クラス機能はありますか?あなたは何を達成しようとしていますか?あなたはそれで何をしようとしているのかははっきりしていません。 – Szer