public int GetDataCountByProjectID(long projectID)
        {
            int totalCount = 0;

            Entities.QueryProjectDataSoure query = new QueryProjectDataSoure();
            query.ProjectID = projectID;
            DataTable dt = BLL.ProjectDataSoure.Instance.GetProjectDataSoure(query, "", 1, 1, out totalCount);

            return(totalCount);
        }
        /// <summary>
        /// 按照查询条件查询
        /// </summary>
        /// <param name="query">查询条件</param>
        /// <param name="order">排序</param>
        /// <param name="currentPage">页号,-1不分页</param>
        /// <param name="pageSize">每页记录数</param>
        /// <param name="totalCount">总行数</param>
        /// <returns>集合</returns>
        public DataTable GetProjectDataSoure(QueryProjectDataSoure query, string order, int currentPage, int pageSize, out int totalCount)
        {
            string where = string.Empty;

            if (query.PDSID != Constant.INT_INVALID_VALUE)
            {
                where += " and PDSID=" + query.PDSID + "";
            }
            if (query.ProjectID != Constant.INT_INVALID_VALUE)
            {
                where += " and ProjectID=" + query.ProjectID + "";
            }
            if (query.Source != Constant.INT_INVALID_VALUE)
            {
                where += " and Source=" + query.Source + "";
            }
            if (query.RelationID != Constant.STRING_INVALID_VALUE)
            {
                where += " and RelationID='" + StringHelper.SqlFilter(query.RelationID) + "'";
            }
            if (query.Status != Constant.INT_INVALID_VALUE)
            {
                where += " and Status=" + query.Status + "";
            }


            DataSet ds;

            SqlParameter[] parameters =
            {
                new SqlParameter("@where",         SqlDbType.NVarChar, 40000),
                new SqlParameter("@order",         SqlDbType.NVarChar,   200),
                new SqlParameter("@pagesize",      SqlDbType.Int,          4),
                new SqlParameter("@indexpage",     SqlDbType.Int,          4),
                new SqlParameter("@totalRecorder", SqlDbType.Int, 4)
            };

            parameters[0].Value     = where;
            parameters[1].Value     = order;
            parameters[2].Value     = pageSize;
            parameters[3].Value     = currentPage;
            parameters[4].Direction = ParameterDirection.Output;

            ds         = SqlHelper.ExecuteDataset(CONNECTIONSTRINGS, CommandType.StoredProcedure, P_PROJECTDATASOURE_SELECT, parameters);
            totalCount = (int)(parameters[4].Value);
            return(ds.Tables[0]);
        }
        /// <summary>
        /// 根据项目id取项目关联数据id,与dslist里id进行比较不同则返回false
        /// </summary>
        /// <param name="projectID"></param>
        /// <param name="dslist"></param>
        /// <returns></returns>
        private bool IsSameProjectDataSource(long projectID, List <ProjectDataSoure> dslist)
        {
            //默认相等
            bool flag      = true;
            int  rowscount = 0;

            Entities.QueryProjectDataSoure query = new QueryProjectDataSoure();
            query.ProjectID = projectID;
            DataTable dt = BLL.ProjectDataSoure.Instance.GetProjectDataSoure(query, "", 1, 100000, out rowscount);

            if (dt != null && dt.Rows.Count > 0)
            {
                //如果个数不相等,false;
                if (dt.Rows.Count == dslist.Count)
                {
                    for (int i = 0; i < dt.Rows.Count; i++)
                    {
                        string _relationid = dt.Rows[i]["RelationID"].ToString();
                        int    sameindex   = dslist.Count;
                        for (int n = 0; n < dslist.Count; n++)
                        {
                            if (_relationid == dslist[n].RelationID)
                            {
                                sameindex = n;
                                break;
                            }
                        }
                        if (sameindex == dslist.Count)
                        {
                            flag = false;
                            break;
                        }
                    }
                }
                else
                {
                    flag = false;
                }
            }
            else
            {
                flag = false;
            }

            return(flag);
        }
        /// <summary>
        /// 得到一个对象实体
        /// </summary>
        public Entities.ProjectDataSoure GetProjectDataSoure(long PDSID)
        {
            QueryProjectDataSoure query = new QueryProjectDataSoure();

            query.PDSID = PDSID;
            DataTable dt    = new DataTable();
            int       count = 0;

            dt = GetProjectDataSoure(query, string.Empty, 1, 1, out count);
            if (count > 0)
            {
                return(LoadSingleProjectDataSoure(dt.Rows[0]));
            }
            else
            {
                return(null);
            }
        }
        /// <summary>
        /// 是否存在该记录
        /// </summary>
        public bool IsExistsByPDSID(long PDSID)
        {
            QueryProjectDataSoure query = new QueryProjectDataSoure();

            query.PDSID = PDSID;
            DataTable dt    = new DataTable();
            int       count = 0;

            dt = GetProjectDataSoure(query, string.Empty, 1, 1, out count);
            if (count > 0)
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
 /// <summary>
 /// 按照查询条件查询
 /// </summary>
 /// <param name="query">查询条件</param>
 /// <param name="order">排序</param>
 /// <param name="currentPage">页号,-1不分页</param>
 /// <param name="pageSize">每页记录数</param>
 /// <param name="totalCount">总行数</param>
 /// <returns>集合</returns>
 public DataTable GetProjectDataSoure(QueryProjectDataSoure query, string order, int currentPage, int pageSize, out int totalCount)
 {
     return(Dal.ProjectDataSoure.Instance.GetProjectDataSoure(query, order, currentPage, pageSize, out totalCount));
 }