예제 #1
0
        protected override IEnumerable <IIdentityUserLogin> PerformGetByQuery(IQuery <IIdentityUserLogin> query)
        {
            var sqlClause  = GetBaseQuery(false);
            var translator = new SqlTranslator <IIdentityUserLogin>(sqlClause, query);
            var sql        = translator.Translate();

            var dtos = Database.Fetch <ExternalLoginDto>(sql);

            foreach (var dto in dtos)
            {
                yield return(ExternalLoginFactory.BuildEntity(dto));
            }
        }
예제 #2
0
        /// <summary>
        /// Query for user tokens
        /// </summary>
        /// <param name="query"></param>
        /// <returns></returns>
        public IEnumerable <IIdentityUserToken> Get(IQuery <IIdentityUserToken> query)
        {
            Sql <ISqlContext> sqlClause = GetBaseTokenQuery(false);

            var translator        = new SqlTranslator <IIdentityUserToken>(sqlClause, query);
            Sql <ISqlContext> sql = translator.Translate();

            List <ExternalLoginTokenDto> dtos = Database.Fetch <ExternalLoginTokenDto>(sql);

            foreach (ExternalLoginTokenDto dto in dtos)
            {
                yield return(ExternalLoginFactory.BuildEntity(dto));
            }
        }
예제 #3
0
        protected override IIdentityUserLogin PerformGet(int id)
        {
            var sql = GetBaseQuery(false);

            sql.Where(GetBaseWhereClause(), new { id = id });

            var dto = Database.Fetch <ExternalLoginDto>(SqlSyntax.SelectTop(sql, 1)).FirstOrDefault();

            if (dto == null)
            {
                return(null);
            }

            var entity = ExternalLoginFactory.BuildEntity(dto);

            // reset dirty initial properties (U4-1946)
            entity.ResetDirtyProperties(false);

            return(entity);
        }
        protected override IIdentityUserLogin PerformGet(int id)
        {
            var sql = GetBaseQuery(false);

            sql.Where(GetBaseWhereClause(), new { Id = id });

            var macroDto = Database.Fetch <ExternalLoginDto>(sql).FirstOrDefault();

            if (macroDto == null)
            {
                return(null);
            }

            var factory = new ExternalLoginFactory();
            var entity  = factory.BuildEntity(macroDto);

            //on initial construction we don't want to have dirty properties tracked
            // http://issues.umbraco.org/issue/U4-1946
            ((TracksChangesEntityBase)entity).ResetDirtyProperties(false);

            return(entity);
        }