2017-08-30 48 views

回答

1

要在普通(您的自定义)C#类中使用这些接口,您必须使用依赖注入。首先,您需要在依赖注入系统中注册您的自定义类。这很容易;只需从ITransientDependency(或ISingletonDependency)继承自定义类,然后注入IAbpSession或注册到依赖注入系统的任何类。让我给你看一个基本的样本;

using Abp.Dependency; 
using Abp.Runtime.Session; 
using Castle.Core.Logging; 
using Microsoft.Extensions.Configuration; 
using MyCompanyName.AbpZeroTemplate.Authorization.Users; 

public class MyCustomClass : ITransientDependency 
{ 
    private readonly IAbpSession _abpSession; 
    private readonly ILogger _logger; 
    private readonly UserManager _userManager; 
    private readonly IConfigurationRoot _configurationRoot; 

    public MyCustomClass(IAbpSession abpSession, 
         ILogger logger, 
         UserManager userManager, 
         IConfigurationRoot configurationRoot) 
    { 
     _abpSession = abpSession; 
     _logger = logger; 
     _userManager = userManager; 
     _configurationRoot = configurationRoot; 
    } 

    public async void CreateUser() 
    { 
     await _userManager.CreateAsync(new User 
     { 
      Name = "Alper", 
      TenantId = _abpSession.TenantId 
     }, "1234567"); 


     var myConnectionString = _configurationRoot.GetConnectionString("Default"); 
     _logger.Debug("A new user is created using this connection string : " + myConnectionString); 
    } 
} 

我试图使用你提到的所有接口。

相关问题