分类 .NET 下的文章

基于ASP.NET Core api的服务器事件发送

现如今程序员对Web API的调用已经是轻车熟路。但是传统的api调用都是拉模式,也就是主动发起请求去调用一个api.

但是程序员往往对另一种很有用的模式很陌生,即推模式。

阅读剩余部分

基于ASP.NET Core SignalR的流式传输

SignalR概述

SignalR是ASP.NET Core下非常流行的实现Web实时功能的库。微软再文档中列出了适合的应用场景:

适合 SignalR 的候选项:

  • 需要从服务器进行高频率更新的应用。示例包括游戏、社交网络、投票、拍卖、地图和 GPS 应用。

  • 仪表板和监视应用。示例包括公司仪表板、即时销售更新或旅行警报。

  • 协作应用。协作应用的示例包括白板应用和团队会议软件。

  • 需要通知的应用。社交网络、电子邮件、聊天、游戏、旅行警报和很多其他应用都需使用通知。

 其实只要适合使用Ajax的场景都能使用,他比WebSockets更高级,实现了断线重连,广播,分组等功能。

阅读剩余部分

如何判断.NET Core应用程序是以管理员身份运行

有时候,我们需要知道当前程序是否以管理员身份运行,以便执行一些需要特殊权限的操作。

在github(https://github.com/dotnet/runtime/issues/25118#issuecomment-367407469)上找到了一个解决方案:

//需要引用nuget包Mono.Posix.NETStandard
public static bool IsAdministrator =>
    RuntimeInformation.IsOSPlatform(OSPlatform.Windows) ?
        new WindowsPrincipal(WindowsIdentity.GetCurrent())
            .IsInRole(WindowsBuiltInRole.Administrator) :
        Mono.Unix.Native.Syscall.geteuid() == 0; 

好了,问题解决,文章写完了。

阅读剩余部分