因为项目中使用了 HtmlAgilityPack,以下代码中所有的 Get 请求都使用了 HtmlAgilityPack 自带的 HtmlWeb

如果不使用 HtmlAgilityPack,等效替换成 System.Net.Http 发送 Get 请求即可

Telegram

Telegram Bot

Nuget

代码

using System;
using System.Text;
using System.Threading.Tasks;
using System.Collections.Generic;
using Telegram.Bot;
using Telegram.Bot.Types.Enums;
using Microsoft.Extensions.Logging;

namespace Notifier {
    public class TgBot {
        private readonly ILogger<TgBot> _logger;

        #region debug strings
        private readonly string debugSendMessage = "Send notification to Telegram";
        #endregion

        public TgBot(ILogger<TgBot> logger) {
            _logger = logger;
        }

        public async Task SendMessage(NotifyConfig config, List<string> msgs) {
            var sb = new StringBuilder();
            var BotClient = new TelegramBotClient(token: config.TelegramToken);

            try {
                foreach (var msg in msgs) {
                    _logger.LogDebug($"{debugSendMessage} : {record.Name}");
                    await BotClient.SendTextMessageAsync(
                        chatId: config.TelegramChatID,
                        text: msg, 
                        parseMode: ParseMode.Html
                    );
                }
                _logger.LogDebug($"Done: {debugSendMessage}");
            } catch (Exception) {
                _logger.LogError($"Error: {debugSendMessage}");
                throw;
            } finally {
                Dispose();
            }
        }

        public void Dispose() {
            GC.SuppressFinalize(this);
        }
    }
}

iOS

Bark

Nuget

  • HtmlAgilityPack

代码

Continue reading “C# (.NET) N 个通知推送平台的使用”

Windows Server 运行了几个以日期做名称写日志文件的程序,每次看日志都得远程登录比较麻烦

用 IIS 简单托管一下,类似于 nginx 的 auto index,以后用浏览器看就很方便了

WinServer GUI 设置起来很简单

下文将展示如何在 Windows Server 2019 下使用 IIS 托管静态文件

环境

  • Windows Server 2019
    • IIS

参考

步骤

开启 IIS

  1. 打开 服务器管理器添加角色和功能
  2. 勾选 Web 服务器(IIS),跳过 功能 选择
  3. Web 服务器 步骤中按照下图勾选功能
  4. 等待安装完毕

IIS 添加虚拟目录

Continue reading “Windows Server IIS 建立静态文件(下载)站点”