上一篇文章(https://www.cnblogs.com/meowv/p/12896898.html)已经成功将博客项目跑起来了,那么本篇主要是将之前遗留的问题解决,现在的代码看起来可能还是比较混乱,有大量与之无关的代码存在里面,对于强迫症患者来说真的是零容忍。
在程序员界,总有一批强迫症患者,他们希望自己写的代码看起来尽量的完美无瑕疵。
完善与美化
直奔主题,首先将各项目层的项目文件(.csproj
)打开,格式化一下,没有引用这句代码的也加一下,这里其实就是将公共属性拿出来,没什么特殊的。
common.props
中的代码也非常简单,主要是禁用当开启输出XML的时候没有给代码进行summary注释产生的警告,其实这些大可不必为之折腾,不影响项目的成功运行。如果您觉得没啥必要,完全可以跳过此小节看最后。
.Application
.Application
层现在只引用Volo.Abp.Identity.Application
包,和依赖.Application.Caching
、.Application.Contracts
、.Domain.Shared
三个项目。
//Meowv.Blog.Application.csproj<Project Sdk="Microsoft.NET.Sdk"> <Import Project="..\..\common.props" /> <PropertyGroup> <TargetFramework>netcoreapp3.1TargetFramework> PropertyGroup> <ItemGroup> <PackageReference Include="Volo.Abp.Identity.Application" Version="2.7.0" /> <ProjectReference Include="..\Meowv.Blog.Application.Caching\Meowv.Blog.Application.Caching.csproj" /> <ProjectReference Include="..\Meowv.Blog.Application.Contracts\Meowv.Blog.Application.Contracts.csproj" /> <ProjectReference Include="..\Meowv.Blog.Domain.Shared\Meowv.Blog.Domain.Shared.csproj" /> ItemGroup>Project>
.Application.Caching
.Application.Caching
层看名字就知道,我准备用它来处理缓存,这里会用到两个包,Volo.Abp.Caching
、Microsoft.Extensions.Caching.Redis
不管三七二十一,新建一个模块类MeowvBlogApplicationCachingModule.cs
,依赖于AbpCachingModule
和我们的MeowvBlogDomainModule
模块(此时还没添加)
using Volo.Abp.Caching;using Volo.Abp.Modularity;namespace Meowv.Blog.Application.Caching{
[DependsOn( typeof(AbpCachingModule) // ... )] public class MeowvBlogApplicationCachingModule : AbpModule {
public override void ConfigureServices(ServiceConfigurationContext context) {
base.ConfigureServices(context); } }}
//Meowv.Blog.Application.Caching.csproj<Project Sdk="Microsoft.NET.Sdk"> <Import Project="..\..\common.props" /> <PropertyGroup> <TargetFramework>netcoreapp3.1TargetFramework> PropertyGroup> <ItemGroup> <PackageReference Include="Microsoft.Extensions.Caching.Redis" Version="2.2.0" /> <PackageReference Include="Volo.Abp.Caching" Version="2.7.0" /> <ProjectReferenc