source/Repid.Core/DbSet/OrderDbSet.cs
(开头部分) 3KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
using System;
using System.Collections.Generic;
using System.Data.Entity;
using System.Linq;
using Repid.Entity;
namespace Repid.Core.DbSet
{
/// <summary>
/// 排序数据
/// </summary>
/// <typeparam name="T">实体类型</typeparam>
internal class OrderDbSet<T> : BaseDbSet<T> where T : EntityOrder, new()
{
/// <summary>
/// 查询计算器
/// </summary>
/// <returns>查询计算器</returns>
internal override IQueryable<T> Query()
{
return dbContext.Ef.Set<T>().AsNoTracking().OrderBy(m => m.Sequence);
}
/// <summary>
/// 设置排序
/// </summary>
/// <param name="id">编号</param>
/// <param name="order">方向</param>
/// <param name="entities">排序序列</param>
/// <returns>有无目标</returns>
internal bool Order(string id, string order, IQueryable<T> entities)
{
T currentEntity = Get(id);
int temp = currentEntity.Sequence;
#region 条件查询
// 读取数据条件
if (order.Equals("asc"))
{
entities = entities
.Where(m => m.Sequence > temp)
.OrderBy(m => m.Sequence);
}
else
{
entities = entities
.Where(m => m.Sequence < temp)
.OrderByDescending(m => m.Sequence);
}
#endregion
#region 调换顺序
// 读取数据
T orderEntity = entities.FirstOrDefault();
// 调换位置
后面还有 58 行代码,解锁后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。