Blog.Core/Blog.Core.Api/Blog.Core.Api.csproj
LemonNoCry 7629527ee9
🎨 缓存的完善优化
1.统一封装基于微软分布式缓存接口IDistributedCache使用
2.IDistributedCache只适合普通的缓存使用,如果要使用redis队列、订阅redis消息等,就要使用redis原生库
3.增加缓存管理接口[Systems/CacheManageController]
4.目前支持内存、redis缓存实现,理论可随意扩展甚至自定义实现
5.默认使用内存缓存,可在appsetting.json中配置Redis

切换到IDistributedCache好处如下
默认session使用IDistributedCache进行存储,如果你搭配使用IDistributedCache+外部缓存(如Redis),可实现应用程序重启session不丢失
更直观就是,调试的时候登录swagger后即使重启调试也无需在登陆
2023-06-01 17:54:54 +08:00

118 lines
4.1 KiB
XML

<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net6.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<!--<AspNetCoreHostingModel>OutOfProcess</AspNetCoreHostingModel>-->
<DockerDefaultTargetOS>Linux</DockerDefaultTargetOS>
<EnableUnsafeBinaryFormatterSerialization>true</EnableUnsafeBinaryFormatterSerialization>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
<DocumentationFile>..\Blog.Core.Api\Blog.Core.xml</DocumentationFile>
<NoWarn>1701;1702;1591</NoWarn>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|AnyCPU'">
<DocumentationFile>..\Blog.Core\Blog.Core.xml</DocumentationFile>
<NoWarn>1701;1702;1591</NoWarn>
</PropertyGroup>
<PropertyGroup>
<ServerGarbageCollection>false</ServerGarbageCollection>
</PropertyGroup>
<ItemGroup>
<Compile Remove="Extensions\**" />
<Compile Remove="Hubs\**" />
<Compile Remove="Logs\**" />
<Compile Remove="Log\**" />
<Compile Remove="Middlewares\**" />
<Compile Remove="wwwroot\ui\**" />
<Content Remove="Extensions\**" />
<Content Remove="Hubs\**" />
<Content Remove="Logs\**" />
<Content Remove="Log\**" />
<Content Remove="Middlewares\**" />
<Content Remove="wwwroot\ui\**" />
<EmbeddedResource Remove="Extensions\**" />
<EmbeddedResource Remove="Hubs\**" />
<EmbeddedResource Remove="Logs\**" />
<EmbeddedResource Remove="Log\**" />
<EmbeddedResource Remove="Middlewares\**" />
<EmbeddedResource Remove="wwwroot\ui\**" />
<None Remove="Extensions\**" />
<None Remove="Hubs\**" />
<None Remove="Logs\**" />
<None Remove="Log\**" />
<None Remove="Middlewares\**" />
<None Remove="wwwroot\ui\**" />
</ItemGroup>
<ItemGroup>
<None Remove="index.html" />
<None Remove="WangWu.db" />
<None Remove="WMBlog.db" />
<None Remove="WMBlogLog.db" />
<None Remove="WMBlogLog.db-journal" />
<None Remove="ZhaoLiu.db" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="Microsoft.Data.Sqlite" Version="7.0.0" />
<PackageReference Include="Microsoft.Data.Sqlite.Core" Version="7.0.0" />
<PackageReference Include="Microsoft.VisualStudio.Azure.Containers.Tools.Targets" Version="1.17.0" />
<PackageReference Include="SkyAPM.Agent.AspNetCore" Version="2.0.1" />
<PackageReference Include="System.Text.Encoding.CodePages" Version="6.0.0" />
<PackageReference Include="FluentValidation.AspNetCore" Version="11.2.1" />
<PackageReference Include="FluentValidation.DependencyInjectionExtensions" Version="11.2.1" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Blog.Core.Extensions\Blog.Core.Extensions.csproj" />
</ItemGroup>
<ItemGroup>
<None Include="wwwroot\BlogCore.Data.json\BlogArticle.tsv" />
<None Include="wwwroot\BlogCore.Data.json\Modules.tsv" />
<None Include="wwwroot\BlogCore.Data.json\Permission.tsv" />
<None Include="wwwroot\BlogCore.Data.json\Role.tsv" />
<None Include="wwwroot\BlogCore.Data.json\RoleModulePermission.tsv" />
<None Include="wwwroot\BlogCore.Data.json\SysUserInfo.tsv" />
<None Include="wwwroot\BlogCore.Data.json\Topic.tsv" />
<None Include="wwwroot\BlogCore.Data.json\TopicDetail.tsv" />
<None Include="wwwroot\BlogCore.Data.json\UserRole.tsv" />
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="index.html" />
</ItemGroup>
<ItemGroup>
<Content Update="appsettings.json">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content>
</ItemGroup>
<ItemGroup>
<None Update="Dockerfile">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
<None Update="StopContainerImg.sh">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
</ItemGroup>
<ItemGroup>
<Folder Include="wwwroot\BlogCore.Data.excel\" />
</ItemGroup>
<ProjectExtensions>
<VisualStudio>
<UserProperties appsettings_1json__JsonSchema="" />
</VisualStudio>
</ProjectExtensions>
</Project>