将asp.net core 程序打包成docker镜像,并创建容器
摘要:一、编写Dockerfile FROM mcr.microsoft.com/dotnet/aspnet:7.0 //指定基础镜像asp.net core 7 COPY dist /app WORKDIR /app EXPOSE 80/tcp ENTRYPOINT [ "dotnet","App.dl
阅读全文
SignalR 分布式部署
摘要:分布式部署意味着有多台SignalR服务器,一台服务器有多个客户端连接。 SignalR 要求对于某一个特定连接的所有HTTP 请求都需要被一个相同服务进程处理,当SignalR 运行在一个服务场时(多个服务器),则必须使用“粘性会话”(服务器开启)或者”跳过协商“(用websocket) 问题:某
阅读全文
为什么要用JWT,JWT与Seeion区别
摘要:一、为什么使用JWT HTTP是无状态的,开发人员需要基于HTTP来模拟实现状态的保存。经典的实现用户登录的做法是用Session,用户登录验证成功后,服务端生成SessionId。服务端会将SessionId与登录的用户信息的对应关系保存在服务器内存中,同时将SessionId返回给浏览器端,se
阅读全文
当前请求外创建一个独立于当前请求的scope
摘要:比如一个方法里面是一个Task,且没有await,方法运行结束,当前Scope就释放了,此时就需要创建一个独立于当前请求的scope。 在遇到lifetime的一些其他错误的时候也可以试试使用ServiceScopeFactory。 public class Test { private reado
阅读全文
解决内置DI不能使用名字注入不同实例问题
摘要:public Enum TestType { TypeA,TypeB } 1 public Interface ITest 2 { TestType Type { get; } 3 void SayHi(); 4 } 1 public Class TestA:ITest 2 { 3 Public T
阅读全文
在类库项目中使用WebApplicationBuilder、IApplicationBuilder、IWebHostEnvironment等类
摘要:在csproj中添加 <ItemGroup> <FrameworkReference Include="Microsoft.AspNetCore.App" /> </ItemGroup>
阅读全文