public OrganizationDataQueryParameters(
     int activeOrganizationId,
     OrganizationDataQueryBreadth breadth,
     DataAccessLevel dataAccessLevel)
 {
     ActiveOrganizationId = activeOrganizationId;
     Breadth         = breadth;
     DataAccessLevel = dataAccessLevel ?? throw new ArgumentNullException(nameof(dataAccessLevel));
 }
Exemplo n.º 2
0
        /// <summary>
        /// 获取用户空间首页需要显示的数据
        /// </summary>
        /// <param name="visitorID">访问者ID</param>
        /// <param name="spaceOwnerID">空间所有者ID</param>
        /// <returns></returns>
        public SpaceData GetSpaceDataForVisit(int visitorID, int spaceOwnerID)
        {
            if (ValidateUserID(visitorID) == false || ValidateUserID(spaceOwnerID) == false)
            {
                return(null);
            }

            DataAccessLevel dataAccessLevel = GetDataAccessLevel(visitorID, spaceOwnerID);

            return(SpaceDao.Instance.GetSpaceDataForVisit(spaceOwnerID, dataAccessLevel));
        }
Exemplo n.º 3
0
        public override DoingCollection GetUserDoingsWithComments(int doingOwnerID, DataAccessLevel dataAccessLevel, int pageNumber, int pageSize, ref int?totalCount)
        {
            DoingCollection doings = null;

            using (SqlSession db = new SqlSession())
            {
                using (SqlQuery query = db.CreateQuery())
                {
                    query.Pager.TableName    = "[bx_Doings]";
                    query.Pager.SortField    = "[DoingID]";
                    query.Pager.SelectCount  = true;
                    query.Pager.PageNumber   = pageNumber;
                    query.Pager.PageSize     = pageSize;
                    query.Pager.TotalRecords = totalCount;

                    query.Pager.Condition = "[UserID]=@UserID";
                    query.CreateParameter <int>("@UserID", doingOwnerID, SqlDbType.Int);

                    //if (dataAccessLevel == DataAccessLevel.Normal)
                    //{
                    //    query.Pager.Condition += " AND [PrivacyType] IN (0, 3)";
                    //}
                    //else if (dataAccessLevel == DataAccessLevel.Friend)
                    //{
                    //    query.Pager.Condition += " AND [PrivacyType] IN (0, 1, 3)";
                    //}

                    using (XSqlDataReader reader = query.ExecuteReader())
                    {
                        doings = new DoingCollection(reader);

                        if (totalCount == null && reader.NextResult() && reader.Read())
                        {
                            totalCount = reader.Get <int>(0);
                        }

                        doings.TotalRecords = totalCount.GetValueOrDefault();
                    }
                }

                FillDoingComments(doings, db);
            }

            return(doings);
        }
Exemplo n.º 4
0
        /// <summary>
        /// 获取用户的记录包含当前页的记录的评论(通过记录的CommentList属性访问)
        /// </summary>
        /// <param name="visitorID">访问者ID</param>
        /// <param name="doingOwnerID">数据所有者ID</param>
        /// <param name="pageNumber">数据分页每页条数</param>
        /// <param name="pageSize">数据分页当前页码</param>
        /// <returns></returns>
        public DoingCollection GetUserDoingsWithComments(int visitorID, int doingOwnerID, int pageNumber, int pageSize)
        {
            pageNumber = pageNumber <= 0 ? 1 : pageNumber;

            pageSize = pageSize <= 0 ? Consts.DefaultPageSize : pageSize;

            if (ValidateUserID(visitorID) == false || ValidateUserID(doingOwnerID) == false)
            {
                return(null);
            }

            DoingCollection doings = null;

            DataAccessLevel dataAccessLevel = GetDataAccessLevel(visitorID, doingOwnerID);

            #region 获取TotalCount缓存

            int?totalCount = null;

            string totalCountCacheKey = GetCacheKeyForUserDoingsTotalCount(doingOwnerID, dataAccessLevel);

            bool totalCountCached = CacheUtil.TryGetValue(totalCountCacheKey, out totalCount);

            #endregion

            doings = DoingDao.Instance.GetUserDoingsWithComments(doingOwnerID, dataAccessLevel, pageNumber, pageSize, ref totalCount);

            #region 设置TotalCount缓存

            if (totalCountCached == false)
            {
                CacheUtil.Set(totalCountCacheKey, totalCount);
            }

            #endregion

            ProcessKeyword(doings, ProcessKeywordMode.TryUpdateKeyword);

            return(doings);
        }
Exemplo n.º 5
0
        public override AlbumCollection GetUserAlbums(int userID, DataAccessLevel dataAccessLevel, int pageNumber, int pageSize, ref int? totalCount)
        {
            using (SqlQuery query = new SqlQuery())
            {
                query.Pager.TableName = "[bx_Albums]";
                query.Pager.SortField = "[UpdateDate]";
                query.Pager.PrimaryKey = "AlbumID";
                query.Pager.IsDesc = true;
                query.Pager.PageNumber = pageNumber;
                query.Pager.PageSize = pageSize;
                query.Pager.TotalRecords = totalCount;
                query.Pager.SelectCount = true;

                query.Pager.Condition = "[UserID] = @UserID";

                query.CreateParameter<int>("@UserID", userID, SqlDbType.Int);

                if (dataAccessLevel == DataAccessLevel.Normal)
                {
                    query.Pager.Condition += " AND [PrivacyType] IN (0, 3)";
                }
                else if (dataAccessLevel == DataAccessLevel.Friend)
                {
                    query.Pager.Condition += " AND [PrivacyType] IN (0, 1, 3)";
                }

                using (XSqlDataReader reader = query.ExecuteReader())
                {

                    AlbumCollection albums = new AlbumCollection(reader);

                    if (totalCount == null && reader.NextResult() && reader.Read())
                    {
                        totalCount = reader.Get<int>(0);
                    }

                    albums.TotalRecords = totalCount.GetValueOrDefault();

                    return albums;
                }
            }
        }
Exemplo n.º 6
0
 /// <summary>
 /// 获取指定用户的日志
 /// </summary>
 /// <param name="userID">日志所有者ID</param>
 /// <param name="categoryID">日志所属分类的ID,传NULL则不以分类作为条件</param>
 /// <param name="tagID">日志所含标签的ID,传null则不以分类作为条件</param>
 /// <param name="dataAccessLevel">数据访问级别,将根据此级别返回对应的数据</param>
 /// <param name="pageNumber">分页页码,从1开始计数</param>
 /// <param name="pageSize">分页尺度</param>
 /// <param name="totalCount">总数据条数(注意:不是本次返回的集合数据条数),用于分页</param>
 /// <returns>日志集合</returns>
 public abstract BlogArticleCollection GetUserBlogArticles(int userID, int?categoryID, int?tagID, DataAccessLevel dataAccessLevel, int pageNumber, int pageSize, ref int?totalCount);
Exemplo n.º 7
0
 /// <summary>
 /// 获取类似标签的日志
 /// </summary>
 /// <param name="articleID">指定日志ID</param>
 /// <param name="number">获取的篇数</param>
 public abstract BlogArticleCollection GetSimilarArticles(int articleID, int number, DataAccessLevel dataAccessLevel);
Exemplo n.º 8
0
 public abstract PostAuthorExtendInfo GetPostAuthorExtendInfo(int userID, DataAccessLevel dataAccessLevel);
Exemplo n.º 9
0
        public override PostAuthorExtendInfo GetPostAuthorExtendInfo(int userID, DataAccessLevel dataAccessLevel)
        {
            string privacyCondition = null;

            if (dataAccessLevel == DataAccessLevel.Normal)
            {
                privacyCondition = " AND [PrivacyType] = 0 ";
            }
            else if (dataAccessLevel == DataAccessLevel.Friend)
            {
                privacyCondition = " AND [PrivacyType] IN (0, 1)";
            }



            string privacyConditionOfPhoto = string.Empty;

            if (dataAccessLevel == DataAccessLevel.Normal)
            {
                privacyConditionOfPhoto = " AND AlbumID IN(SELECT AlbumID FROM bx_Albums WHERE UserID = @UserID AND [PrivacyType] = 0)";
            }
            else if (dataAccessLevel == DataAccessLevel.Friend)
            {
                privacyConditionOfPhoto = " AND AlbumID IN(SELECT AlbumID FROM bx_Albums WHERE UserID = @UserID AND [PrivacyType] IN (0, 1))";
            }


            StringBuffer sql = new StringBuffer();

            sql += "SELECT TOP 1 * FROM bx_BlogArticles WHERE UserID = @UserID" + privacyCondition + " ORDER BY ArticleID DESC; \r\n";
            sql += "SELECT TOP 4 * FROM bx_Photos WHERE UserID = @UserID" + privacyConditionOfPhoto + " ORDER BY PhotoID DESC; \r\n";
            sql += "SELECT TOP 6 *, B.Text, B.KeywordVersion FROM bx_Impressions A LEFT JOIN bx_ImpressionTypes B ON B.TypeID = A.TypeID WHERE UserID = @UserID ORDER BY UpdateDate DESC;";

            using (SqlQuery query = new SqlQuery())
            {
                query.CommandText = sql.ToString();

                query.CreateParameter<int>("@UserID", userID, SqlDbType.Int);

                using (XSqlDataReader reader = query.ExecuteReader())
                {
                    PostAuthorExtendInfo result = new  PostAuthorExtendInfo();

                    result.NewArticles = new BlogArticleCollection(reader);

                    reader.NextResult();

                    result.NewPhotos = new PhotoCollection(reader);

                    reader.NextResult();

                    result.Impressions = new ImpressionCollection(reader);

                    return result;
                }
            }
        }
Exemplo n.º 10
0
		public override ShareCollection GetUserShares(int shareOwnerID, ShareType? shareType, DataAccessLevel dataAccessLevel, int pageNumber, int pageSize, ref int? totalCount)
		{
			using (SqlQuery query = new SqlQuery())
			{
                query.Pager.TableName = "[bx_SharesView]";
				query.Pager.SortField = "[UserShareID]";
				query.Pager.IsDesc = true;
				query.Pager.PageNumber = pageNumber;
				query.Pager.PageSize = pageSize;
				query.Pager.TotalRecords = totalCount;
				query.Pager.SelectCount = true;

				SqlConditionBuilder cb = new SqlConditionBuilder(SqlConditionStart.None);

				cb.Append("[UserID2] = @UserID");

				query.CreateParameter<int>("@UserID", shareOwnerID, SqlDbType.Int);

				if (shareType.HasValue && shareType.Value != ShareType.All)
				{
					cb.Append("[Type] = @Type");

					query.CreateParameter<ShareType>("@Type", shareType.Value, SqlDbType.TinyInt);
				}

				if (dataAccessLevel == DataAccessLevel.Normal)
				{
					cb.Append("[PrivacyType] IN (0, 3)");
				}
				else if (dataAccessLevel == DataAccessLevel.Friend)
				{
					cb.Append("[PrivacyType] IN (0, 1, 3)");
				}
				else if(dataAccessLevel == DataAccessLevel.DataOwner)
				{
					cb.Append("[PrivacyType] != 2");
				}

				query.Pager.Condition = cb.ToString();

                ShareCollection shares;
				using (XSqlDataReader reader = query.ExecuteReader())
				{
                    shares = new ShareCollection(reader);

                    if (reader.NextResult())
					{
                        if (totalCount == null && reader.Read())
						{
                            totalCount = reader.Get<int>(0);
						}

						shares.TotalRecords = totalCount.GetValueOrDefault();
					}

				}
                FillComments(shares, query);

				return shares;
			}
		}
Exemplo n.º 11
0
        public override DoingCollection GetUserDoingsWithComments(int doingOwnerID, DataAccessLevel dataAccessLevel, int pageNumber, int pageSize, ref int? totalCount)
        {
            DoingCollection doings = null;

            using (SqlSession db = new SqlSession())
            {
                using (SqlQuery query = db.CreateQuery())
                {
                    query.Pager.TableName = "[bx_Doings]";
                    query.Pager.SortField = "[DoingID]";
                    query.Pager.SelectCount = true;
                    query.Pager.PageNumber = pageNumber;
                    query.Pager.PageSize = pageSize;
                    query.Pager.TotalRecords = totalCount;

                    query.Pager.Condition = "[UserID]=@UserID";
                    query.CreateParameter<int>("@UserID", doingOwnerID, SqlDbType.Int);

                    //if (dataAccessLevel == DataAccessLevel.Normal)
                    //{
                    //    query.Pager.Condition += " AND [PrivacyType] IN (0, 3)";
                    //}
                    //else if (dataAccessLevel == DataAccessLevel.Friend)
                    //{
                    //    query.Pager.Condition += " AND [PrivacyType] IN (0, 1, 3)";
                    //}

                    using (XSqlDataReader reader = query.ExecuteReader())
                    {
                        doings = new DoingCollection(reader);

                        if (totalCount == null && reader.NextResult() && reader.Read())
                        {
                            totalCount = reader.Get<int>(0);
                        }

                        doings.TotalRecords = totalCount.GetValueOrDefault();
                    }
                }

                FillDoingComments(doings, db);
            }

            return doings;
        }
Exemplo n.º 12
0
 /// <summary>
 /// 获取指定用户的分享
 /// </summary>
 /// <param name="shareOwnerID">分享所有者的ID</param>
 /// <param name="shareType">分享的类型,如果为null将获取所有类型的分析</param>
 /// <param name="dataAccessLevel">数据访问级别,将根据此参数返回数据</param>
 /// <param name="pageNumber">数据分页当前页码</param>
 /// <param name="pageSize">数据分页每页条数</param>
 /// <param name="totalCount">总记录数,传递此参数时可提高查询性能,传递null时将由内部返回</param>
 /// <returns></returns>
 public abstract ShareCollection GetUserShares(int shareOwnerID, ShareType?shareType, DataAccessLevel dataAccessLevel, int pageNumber, int pageSize, ref int?totalCount);
Exemplo n.º 13
0
 protected bool Equals(DataAccessLevel other)
 {
     return(CrossOrganizational == other.CrossOrganizational && CurrentOrganization == other.CurrentOrganization);
 }
Exemplo n.º 14
0
        public override BlogArticleCollection GetUserBlogArticles(int userID, int? categoryID, int? tagID, DataAccessLevel dataAccessLevel, int pageNumber, int pageSize, ref int? totalCount)
        {
            using (SqlQuery query = new SqlQuery())
            {
                query.Pager.TableName = "[bx_BlogArticles]";
                query.Pager.SortField = "[ArticleID]";
                query.Pager.IsDesc = true;
                query.Pager.PageNumber = pageNumber;
                query.Pager.PageSize = pageSize;
                query.Pager.TotalRecords = totalCount;
                query.Pager.SelectCount = true;

                SqlConditionBuilder cb = new SqlConditionBuilder(SqlConditionStart.None);

                if (categoryID.HasValue)
                {
                    cb.Append("[CategoryID] = @CategoryID");

                    query.CreateParameter<int>("@CategoryID", categoryID.Value, SqlDbType.Int);

                    if (categoryID.Value == 0)
                    {
                        cb.Append("[UserID] = @UserID");

                        query.CreateParameter<int>("@UserID", userID, SqlDbType.Int);
                    }
                }
                else
                {
                    cb.Append("[UserID] = @UserID");

                    query.CreateParameter<int>("@UserID", userID, SqlDbType.Int);
                }

                if (tagID.HasValue)
                {
                    cb.Append("[ArticleID] IN (SELECT [TargetID] FROM [bx_TagRelation] WHERE [Type] = 1 AND [TagID] = @TagID)");

                    query.CreateParameter<int>("@TagID", tagID.Value, SqlDbType.Int);
                }

                if (dataAccessLevel == DataAccessLevel.Normal)
                {
                    cb.Append("[PrivacyType] IN (0, 3)");
                }
                else if (dataAccessLevel == DataAccessLevel.Friend)
                {
                    cb.Append("[PrivacyType] IN (0, 1, 3)");
                }

                query.Pager.Condition = cb.ToString();

                using (XSqlDataReader reader = query.ExecuteReader())
                {

                    BlogArticleCollection articles = new BlogArticleCollection(reader);

                    if (reader.NextResult())
                    {
                        if (totalCount == null && reader.Read())
                        {
                            totalCount = reader.Get<int>(0);
                        }

                        articles.TotalRecords = totalCount.GetValueOrDefault();
                    }

                    return articles;
                }
            }
        }
Exemplo n.º 15
0
 /// <summary>
 /// 获取用户的记录包含当前页的记录的评论(通过记录的CommentList属性访问)
 /// </summary>
 /// <param name="doingOwnerID">记录所有者ID</param>
 /// <param name="dataAccessLevel">数据访问级别,将根据此级别返回数据</param>
 /// <param name="pageNumber">数据分页每页条数</param>
 /// <param name="pageSize">数据分页当前页码</param>
 /// <param name="totalCount">总记录数</param>
 /// <returns></returns>
 public abstract DoingCollection GetUserDoingsWithComments(int doingOwnerID, DataAccessLevel dataAccessLevel, int pageNumber, int pageSize, ref int?totalCount);
Exemplo n.º 16
0
        public override BlogArticleCollection GetSimilarArticles(int articleID, int number, DataAccessLevel dataAccessLevel)
        {
            string c = string.Empty;

            if (dataAccessLevel == DataAccessLevel.Normal)
            {
                c = "[PrivacyType] IN (0, 3) AND ";
            }
            else if (dataAccessLevel == DataAccessLevel.Friend)
            {
                c = "[PrivacyType] IN (0, 1, 3) AND ";
            }

            string sql =
@"SELECT TOP (@Number) * FROM [bx_BlogArticles] WHERE " + c + @"[ArticleID] <> @ArticleID AND [ArticleID] IN (
	SELECT DISTINCT [TargetID] FROM [bx_TagRelation] WHERE [TagID] IN (
		SELECT [TagID] FROM [bx_TagRelation] WHERE [TargetID] = @ArticleID AND [Type] = 1
	) AND [Type] = 1
);";

            using (SqlQuery query = new SqlQuery())
            {
                query.CommandText = sql;

                query.CreateTopParameter("@Number", number);
                query.CreateParameter<int>("@ArticleID", articleID, SqlDbType.Int);

                using (XSqlDataReader reader = query.ExecuteReader())
                {
                    return new BlogArticleCollection(reader);
                }
            }
        }
Exemplo n.º 17
0
 /// <summary>
 /// 获取指定用户的相册
 /// </summary>
 /// <param name="userID">相册所有者ID</param>
 /// <param name="dataAccessLevel">数据访问级别,将根据此级别返回对应的数据</param>
 /// <param name="pageNumber">分页页码,从1开始计数</param>
 /// <param name="pageSize">分页尺度</param>
 /// <param name="totalCount">总数据条数(用于提高分页性能,传null时将从内部返回)</param>
 /// <returns>符合条件的相册数据</returns>
 public abstract AlbumCollection GetUserAlbums(int userID, DataAccessLevel dataAccessLevel, int pageNumber, int pageSize, ref int?totalCount);
Exemplo n.º 18
0
        /**************************************
        *   GetCacheKey开头的函获取缓存键    *
        **************************************/

        /// <summary>
        /// 获取用户记录总条数的缓存键
        /// </summary>
        /// <param name="doingOwnerID">记录所有者的ID</param>
        /// <param name="dataAccessLevel">浏览者的数据访问级别</param>
        /// <returns></returns>
        private string GetCacheKeyForUserDoingsTotalCount(int doingOwnerID, DataAccessLevel dataAccessLevel)
        {
            return("Doing/" + doingOwnerID + "/Count/" + dataAccessLevel);
        }
Exemplo n.º 19
0
        public override SpaceData GetSpaceDataForVisit(int spaceOwnerID, DataAccessLevel dataAccessLevel)
        {
            string privacyCondition = null;

            if (dataAccessLevel == DataAccessLevel.Normal)
            {
                privacyCondition = " AND [PrivacyType] IN (0, 3)";
            }
            else if (dataAccessLevel == DataAccessLevel.Friend)
            {
                privacyCondition = " AND [PrivacyType] IN (0, 1, 3)";
            }

            StringBuffer sql = new StringBuffer();

            sql += "SELECT TOP 5 * FROM bx_BlogArticles WHERE UserID = @UserID" + privacyCondition + " ORDER BY ArticleID DESC; \r\n";
            sql += "SELECT TOP 4 * FROM bx_Albums WHERE UserID = @UserID" + privacyCondition + " ORDER BY AlbumID DESC; \r\n";
            sql += "SELECT TOP 5 * FROM bx_Comments WHERE Type = 1 AND TargetUserID = @UserID AND IsApproved = 1 ORDER BY CommentID DESC; \r\n";
            sql += "SELECT TOP 5 * FROM bx_Doings WHERE UserID = @UserID ORDER BY DoingID DESC; \r\n";
            sql += "SELECT TOP 6 * FROM bx_Visitors WHERE UserID = @UserID ORDER BY CreateDate DESC; \r\n";
            sql += "SELECT TOP 12 * FROM bx_Friends WHERE UserID = @UserID AND GroupID >= 0 ORDER BY Hot, CreateDate DESC; \r\n";

            sql += "SELECT TOP 5 * FROM bx_SharesView WHERE UserID = @UserID" + privacyCondition + " AND [PrivacyType] != 2 ORDER BY ShareID DESC;";

            sql += "SELECT TOP 12 *, B.Text, B.KeywordVersion FROM bx_Impressions A LEFT JOIN bx_ImpressionTypes B ON B.TypeID = A.TypeID WHERE UserID = @UserID ORDER BY UpdateDate DESC;";

            using (SqlQuery query = new SqlQuery())
            {
                query.CommandText = sql.ToString();

                query.CreateParameter <int>("@UserID", spaceOwnerID, SqlDbType.Int);

                using (XSqlDataReader reader = query.ExecuteReader())
                {
                    SpaceData result = new SpaceData();

                    result.ArticleList = new BlogArticleCollection(reader);

                    reader.NextResult();

                    result.AlbumList = new AlbumCollection(reader);

                    reader.NextResult();

                    result.CommentList = new CommentCollection(reader);

                    reader.NextResult();

                    result.DoingList = new DoingCollection(reader);

                    reader.NextResult();

                    result.VisitorList = new VisitorCollection(reader);

                    reader.NextResult();

                    result.FriendList = new FriendCollection(reader);

                    reader.NextResult();

                    result.ShareList = new ShareCollection(reader);

                    reader.NextResult();

                    result.ImpressionList = new ImpressionCollection(reader);

                    return(result);
                }
            }
        }
Exemplo n.º 20
0
        public override SpaceData GetSpaceDataForVisit(int spaceOwnerID, DataAccessLevel dataAccessLevel)
        {
            string privacyCondition = null;

            if (dataAccessLevel == DataAccessLevel.Normal)
            {
                privacyCondition = " AND [PrivacyType] IN (0, 3)";
            }
            else if (dataAccessLevel == DataAccessLevel.Friend)
            {
                privacyCondition = " AND [PrivacyType] IN (0, 1, 3)";
            }

            StringBuffer sql = new StringBuffer();

			sql += "SELECT TOP 5 * FROM bx_BlogArticles WHERE UserID = @UserID" + privacyCondition + " ORDER BY ArticleID DESC; \r\n";
			sql += "SELECT TOP 4 * FROM bx_Albums WHERE UserID = @UserID" + privacyCondition + " ORDER BY AlbumID DESC; \r\n";
			sql += "SELECT TOP 5 * FROM bx_Comments WHERE Type = 1 AND TargetUserID = @UserID AND IsApproved = 1 ORDER BY CommentID DESC; \r\n";
			sql += "SELECT TOP 5 * FROM bx_Doings WHERE UserID = @UserID ORDER BY DoingID DESC; \r\n";
			sql += "SELECT TOP 6 * FROM bx_Visitors WHERE UserID = @UserID ORDER BY CreateDate DESC; \r\n";
			sql += "SELECT TOP 12 * FROM bx_Friends WHERE UserID = @UserID AND GroupID >= 0 ORDER BY Hot, CreateDate DESC; \r\n";

            sql += "SELECT TOP 5 * FROM bx_SharesView WHERE UserID = @UserID" + privacyCondition + " AND [PrivacyType] != 2 ORDER BY ShareID DESC;";

            sql += "SELECT TOP 12 *, B.Text, B.KeywordVersion FROM bx_Impressions A LEFT JOIN bx_ImpressionTypes B ON B.TypeID = A.TypeID WHERE UserID = @UserID ORDER BY UpdateDate DESC;";

            using (SqlQuery query = new SqlQuery())
            {
                query.CommandText = sql.ToString();

                query.CreateParameter<int>("@UserID", spaceOwnerID, SqlDbType.Int);

                using (XSqlDataReader reader = query.ExecuteReader())
                {
                    SpaceData result = new SpaceData();

                    result.ArticleList = new BlogArticleCollection(reader);

                    reader.NextResult();

                    result.AlbumList = new AlbumCollection(reader);

                    reader.NextResult();

                    result.CommentList = new CommentCollection(reader);

                    reader.NextResult();

                    result.DoingList = new DoingCollection(reader);

                    reader.NextResult();

                    result.VisitorList = new VisitorCollection(reader);

                    reader.NextResult();

                    result.FriendList = new FriendCollection(reader);

                    reader.NextResult();

                    result.ShareList = new ShareCollection(reader);

                    reader.NextResult();

                    result.ImpressionList = new ImpressionCollection(reader);

                    return result;
                }
            }
        }
Exemplo n.º 21
0
 public abstract SpaceData GetSpaceDataForVisit(int spaceOwnerID, DataAccessLevel dataAccessLevel);