ResultDefault.cs 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Text;
  4. using System.Linq;
  5. using Newtonsoft.Json.Linq;
  6. namespace SqlSugar
  7. {
  8. /// <summary>
  9. /// ResultDefault
  10. /// </summary>
  11. public partial class JsonQueryableProvider : IJsonQueryableProvider<JsonQueryResult>
  12. {
  13. private List<SqlObjectResult> ToSqlDefault()
  14. {
  15. List<SqlObjectResult> result = new List<SqlObjectResult>();
  16. sugarQueryable = context.Queryable<object>();
  17. appendTypeNames = GetTypeNames();
  18. JsonQueryParameter jsonQueryParameter = new JsonQueryParameter();
  19. RegisterAop();
  20. foreach (JToken item in appendTypeNames)
  21. {
  22. AppendQueryableAll(jsonQueryParameter, item);
  23. }
  24. return ToPageDefault(result, jsonQueryParameter);
  25. }
  26. private List<JToken> GetTypeNames()
  27. {
  28. var result= this.jobject.AsJEnumerable().ToList();
  29. result.Add(JToken.Parse("{JoinLastAfter:null}").First());
  30. result = result.OrderBy(it => GetSort(it.Path.ToLower())).ToList();
  31. return result;
  32. }
  33. private JsonQueryResult ToResultDefault()
  34. {
  35. JsonQueryResult result = new JsonQueryResult();
  36. var toSqls = this.ToSqlList();
  37. var SqlCount = toSqls.FirstOrDefault(it => it.JsonSqlType == JsonProviderType.QueryableCount);
  38. var SqlList = toSqls.FirstOrDefault(it => it.JsonSqlType == JsonProviderType.Queryable);
  39. AddCount(result, SqlCount);
  40. AddList(result, SqlList);
  41. AddDescription();
  42. return result;
  43. }
  44. }
  45. }