using Microsoft.AspNetCore.Mvc; using Microsoft.Extensions.Logging; using Microsoft.Extensions.Options; using Senparc.Weixin.Entities; using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; namespace Winsoft.GOV.XF.WebApi.WXCore.Controllers { public class BaseController : Controller { protected string appId; protected string appSecret; protected ILoggerFactory _loggerFactory; private ILogger _logger; public ILogger Logger { get { if (_logger == null) _logger = _loggerFactory.CreateLogger(this.GetType()); return _logger; } } protected SenparcWeixinSetting _senparcWeixinSetting; public BaseController(IOptions senparcWeixinSetting, ILoggerFactory loggerFactory) { _senparcWeixinSetting = senparcWeixinSetting.Value; appId = _senparcWeixinSetting.WeixinAppId; appSecret = _senparcWeixinSetting.WeixinAppSecret; _loggerFactory = loggerFactory; } } }