This commit is contained in:
2025-04-30 09:51:36 +08:00
parent 561881c9aa
commit 09afa239a6
848 changed files with 385870 additions and 205 deletions

View File

@@ -0,0 +1,33 @@

namespace Yes.Application.Admins.Articles
{
public class ArticleService(BlogDbContext db) : IArticleService
{
private readonly BlogDbContext _db = db;
public async Task<bool> IsSlugInUse(string slug)
{
return await _db.Articles.AnyAsync(x => x.Slug == slug);
}
public async Task<string> CreateUniqueSlug()
{
var times = 5;
var slug = UniqueShortIdGenerator.CreateUniqueShortString();
while (await IsSlugInUse(slug))
{
times--;
if (times <= 0)
{
throw new GeneratorSlugException();
}
slug = UniqueShortIdGenerator.CreateUniqueShortString();
}
return slug;
}
}
}