Esempio n. 1
0
    public async Task SeedAsync()
    {
        if (_context.Set <User>().Any())
        {
            return;
        }

        var users       = GetUsers();
        var roles       = GetRoles();
        var permissions = GetPermissions();

        foreach (var user in users)
        {
            foreach (var role in roles)
            {
                user.AssignRole(role);
            }
        }

        foreach (var role in roles)
        {
            foreach (var permission in permissions)
            {
                role.AssignPermission(permission);
            }
        }

        _context.Set <User>().AddRange(users);
        _context.Set <Role>().AddRange(roles);
        _context.Set <Permission>().AddRange(permissions);

        _context.LogEvents();
        await _context.SaveChangesAsync();
    }
Esempio n. 2
0
    public async Task <bool> CommitAsync()
    {
        var eventLogs = _context.LogEvents();
        await _context.SaveChangesAsync();

        await PublishEventsAsync(eventLogs);

        return(true);
    }