Example #1
0
        public IEnumerable <Comment> GetComments(User user)
        {
            EnsureClientId();
            Validate(user.ValidateGet);

            var builder = new UserQueryBuilder();

            builder.Path  = string.Format(UserCommentsPath, user.id);
            builder.Paged = true;

            return(GetList <Comment>(builder.BuildUri()));
        }
Example #2
0
        public async Task <IEnumerable <WebProfile> > GetWebProfilesAsync(User user)
        {
            EnsureClientId();
            Validate(user.ValidateGet);

            var builder = new UserQueryBuilder();

            builder.Path  = string.Format(UserWebProfilesPath, user.id);
            builder.Paged = true;

            return(await GetListAsync <WebProfile>(builder.BuildUri()));
        }
Example #3
0
        public IEnumerable <Track> GetFavorites(User user)
        {
            EnsureClientId();
            Validate(user.ValidateGet);

            var builder = new UserQueryBuilder();

            builder.Path  = string.Format(UserFavoritesPath, user.id);
            builder.Paged = true;

            return(GetList <Track>(builder.BuildUri()));
        }
Example #4
0
        public override async Task <IPagedResults <User> > ToList()
        {
            var builder     = new UserQueryBuilder(this);
            var populateSql = builder.BuildSqlPopulate();
            var countSql    = builder.BuildSqlCount();
            var keywords    = Params.Keywords.Value ?? string.Empty;
            var roleName    = Params.RoleName.Value ?? string.Empty;

            return(await _store.SelectAsync(new[]
            {
                new DbParam("PageIndex", DbType.Int32, PageIndex),
                new DbParam("PageSize", DbType.Int32, PageSize),
                new DbParam("SqlPopulate", DbType.String, populateSql),
                new DbParam("SqlCount", DbType.String, countSql),
                new DbParam("Keywords", DbType.String, 255, keywords),
                new DbParam("RoleName", DbType.String, 255, roleName),
            }));
        }
        /// <summary>
        /// Get AspNetUser by aspNetUserId
        /// </summary>
        /// <param name="aspNetUserId"></param>
        /// <returns></returns>
        public User GetUserWalletByUserID(string pUserID)
        {
            var user = new User();

            try
            {
                var transactionOptions = new System.Transactions.TransactionOptions();
                transactionOptions.IsolationLevel = System.Transactions.IsolationLevel.ReadUncommitted;
                using (var transactionScope = new System.Transactions.TransactionScope(System.Transactions.TransactionScopeOption.Required, transactionOptions))
                {
                    user = new UserQueryBuilder(new WalletEntities()).HasUserId(pUserID).FirstOrDefault();
                }
                return(user);
            }
            catch (Exception ex)
            {
                var logWallet = new LogWallet();
                Task.Factory.StartNew(() => logWallet.Log(MethodBase.GetCurrentMethod(), pUserID, ex, ""));
                return(user);
            }
        }
Example #6
0
        public async Task GetList_With_Query()
        {
            var expectedUri = new Uri("https://api.soundcloud.com/users?limit=100&q=SharpSound&linked_partitioning=1");

            var gatewayMock = new Mock <ISoundCloudApiGateway>(MockBehavior.Strict);

            var userList = new PagedResult <User> {
                Collection = new List <User> {
                    new User(), new User()
                }
            };

            gatewayMock.Setup(x => x.SendGetRequestAsync <PagedResult <User> >(expectedUri)).ReturnsAsync(userList);

            // Act
            var builder = new UserQueryBuilder {
                Limit = 100, SearchString = "SharpSound"
            };
            var result = (await new Users(gatewayMock.Object).GetAllAsync(builder)).ToList();

            // Assert
            Assert.That(result, Is.EquivalentTo(userList.Collection));
        }