Ejemplo n.º 1
0
        public void ConnectToADServerWorking()
        {
            //Arrange
            var admin  = "Administrator";
            var pw     = "Windows2016";
            var server = "192.168.0.20";
            var repo   = new AdRepository(server, admin, pw);

            //Act
            var list = repo.GetList();

            Console.WriteLine($"{list.Data.Count}");
            foreach (var u in list.Data)
            {
                Console.WriteLine($"{u.DistinguishedName} {u.DisplayName} {u.Description} {u.SamAccountName}");
                foreach (var prop in u.Properties)
                {
                    Console.WriteLine($"    {prop.Key}");
                    foreach (var value in prop.Value)
                    {
                        Console.WriteLine($"        {value}");
                    }
                }
            }

            //Assert
            Assert.IsNotNull(list.Data);
        }
        private async Task refreshData()
        {
            ErrorMessage = string.Empty;
            var authType = (AuthTypes)AdHr.Properties.Settings.Default.AuthType;

            try
            {
                IsWorking = true;
                switch (authType)
                {
                case AuthTypes.WindowsAuthentication:
                    await Task.Run(() =>
                    {
                        repository = new AdRepository(
                            AdHr.Properties.Settings.Default.AdServer
                            );
                    });

                    break;

                case AuthTypes.NameAndPassword:
                    await Task.Run(() =>
                    {
                        repository = new AdRepository(
                            AdHr.Properties.Settings.Default.AdServer
                            , AdHr.Properties.Settings.Default.UserName
                            , AdHr.Properties.Settings.Default.Password);
                    });

                    break;

                default:
                    break;
                }
                await Task.Run(() =>
                {
                    var users = repository.GetList();
                    if (users.HasSuccess)
                    {
                        AdhrUsers = mapper.Map <AdhrUserCollection>(users.Data);
                    }
                    else
                    {
                        ErrorMessage = users.Message;
                    }
                });
            }
            catch (Exception ex)
            {
                ErrorMessage = ex.Message;
            }
            finally
            {
                IsWorking = false;
            }
        }