12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- using Microsoft.Extensions.DependencyInjection;
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using Senparc.Weixin.RegisterServices;
- using Microsoft.Extensions.Configuration;
- using Microsoft.AspNetCore.Builder;
- using Senparc.Weixin.AspNet;
- using Senparc.Weixin.WxOpen;
- using Senparc.CO2NET.AspNet;
- using Microsoft.AspNetCore.Hosting;
- using Microsoft.Extensions.Options;
- using Senparc.CO2NET;
- using Senparc.Weixin;
- using Senparc.Weixin.Entities;
- namespace Hotline.WeChat;
- public static class ServiceCollectionExtensions
- {
- public static IServiceCollection AddWeChatService(this IServiceCollection services)
- {
- var configuration = new ConfigurationManager();
- configuration.AddInMemoryCollection(new Dictionary<string, string>
- {
- { "SenparcWeixinSetting:WxOpenAppId", "#{WxOpenAppId}#" },
- { "SenparcWeixinSetting:WxOpenAppSecret", "#{WxOpenAppSecret}#" },
- { "SenparcWeixinSetting:WxOpenToken", "#{WxOpenToken}#" },
- { "SenparcWeixinSetting:WxOpenEncodingAESKey", "#{WxOpenEncodingAESKey}#" }
- });
- services.AddMemoryCache();
- services.AddSenparcWeixin(configuration);
- return services;
- }
- public static void UseWeChat(this WebApplication app)
- {
- var registerService = app.UseSenparcWeixin(app.Environment,
- null /* 不为 null 则覆盖 appsettings 中的 SenpacSetting 配置*/,
- null /* 不为 null 则覆盖 appsettings 中的 SenpacWeixinSetting 配置*/,
- register => { },
- (register, weixinSetting) =>
- {
- //注册公众号信息(可以执行多次,注册多个小程序)
- register.RegisterWxOpenAccount(weixinSetting, "微信小程序");
- });
- }
- }
|