服务注入 - grissomlau/jimu GitHub Wiki

服务注入

只注入不提供外部访问

接口或类只需继承 IJimuService, 就会自动用 autofac 注入到系统,但因为没配置访问路由,所以外部无法通过 apigateway 进行访问。 如

namespace Auth.IServices
{
    public interface IAuthMemberService : IJimuService
    {
        MemberInfo GetMemberInfo(string username, string password);
    }
}

然后就可以用 autofac 进行解析

var memberService = host.Container.Resolve<IAuthMemberService>();
// host is  IServiceHost host in Server

提供外部访问

接口或类同时满足:

  1. IJimuService
  2. 配置访问路由 如
namespace Auth.IServices
{
    [JimuServiceRoute("/api/v1/member")]
    public interface IMemberService : IJimuService
    {
        [JimuService(EnableAuthorization = true, CreatedBy = "grissom", CreatedDate = "2018-07-17", Comment = "get current token member info")]
        MemberInfo GetCurrentMemberInfo();
    }
}