Personalblog/Services/PostService.cs
(开头部分) 8KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
using Markdig.Renderers.Normalize;
using Markdig.Syntax.Inlines;
using Markdig.Syntax;
using Markdig;
using Microsoft.EntityFrameworkCore;
using Personalblog.Model;
using Personalblog.Model.Entitys;
using Personalblog.Model.ViewModels;
using System.Linq;
using System.Linq.Expressions;
using X.PagedList;
using System.Net;
using Personalblog.Utils;
namespace Personalblog.Services
{
public class PostService
{
private readonly MyDbContext _myDbContext;
private readonly ConfigService _conf;
private readonly IWebHostEnvironment _environment;
private readonly CommonService _commonService;
public PostService(MyDbContext myDbContext,
ConfigService conf,
IWebHostEnvironment environment,
CommonService commonService)
{
_myDbContext = myDbContext;
_conf = conf;
_environment = environment;
_commonService = commonService;
}
public string Host => _conf["host"];
//public string Host => "https://localhost:44310/";
public IPagedList<Post> GetPagedList(PostQueryParameters param)
{
var querySet = _myDbContext.posts.Include(a => a.Categories).Select(a=>new Post
{
Id = a.Id,
Categories = a.Categories,
CategoryId = a.CategoryId,
CreationTime = a.CreationTime,
LastUpdateTime = a.LastUpdateTime,
Path = a.Path,
Summary = a.Summary,
Title = a.Title
});
//分类过滤
if(param.CategoryId != 0)
{
querySet = querySet.Where(a => a.CategoryId == param.CategoryId);
}
// 关键词过滤
if (!string.IsNullOrEmpty(param.Search))
{
querySet = querySet.Where(a => a.Title.Contains(param.Search));
}
// 排序
if (!string.IsNullOrEmpty(param.SortBy))
后面还有 164 行代码,解锁后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明
AI 解读
登录后可用,每次 10 积分,解读结果公开显示在下面。
还没有人解读过这个文件。
