/// <summary>
        /// 
        /// </summary>
        /// <param name="SecurityID"></param>
        /// <returns></returns>
        internal List<Business.IGroupSecurity> GetIGroupSecurityBySecurityID(int SecurityID)
        {
            List<Business.IGroupSecurity> Result = new List<Business.IGroupSecurity>();
            System.Data.SqlClient.SqlConnection conn = new System.Data.SqlClient.SqlConnection(DBConnection.DBConnection.Connection);
            DSTableAdapters.IGroupSecurityTableAdapter adap = new DSTableAdapters.IGroupSecurityTableAdapter();
            DS.IGroupSecurityDataTable tbIGroupSecurity = new DS.IGroupSecurityDataTable();
            try
            {
                conn.Open();
                adap.Connection = conn;
                tbIGroupSecurity = adap.GetIGroupSecurityByInvestorGroupID(SecurityID);
                if (tbIGroupSecurity != null)
                {
                    int count = tbIGroupSecurity.Count;
                    for (int i = 0; i < count; i++)
                    {
                        Business.IGroupSecurity newParameterItem = new Business.IGroupSecurity();
                        newParameterItem.IGroupSecurityID = tbIGroupSecurity[i].IGroupSecurityID;
                        newParameterItem.SecurityID = tbIGroupSecurity[i].SecurityID;
                        newParameterItem.InvestorGroupID = tbIGroupSecurity[i].InvestorGroupID;
                        newParameterItem.IGroupSecurityConfig = DBWIGroupSecurity.DBWIGroupSecurityConfigInstance.GetIGroupSecurityConfigByIGroupSecurity(tbIGroupSecurity[i].IGroupSecurityID);

                        Result.Add(newParameterItem);
                    }
                }
            }
            catch (Exception ex)
            {
                return null;
            }
            finally
            {
                adap.Connection.Close();
                conn.Close();
            }
            return Result;
        }
        /// <summary>
        /// get all by group id
        /// </summary>
        /// <param name="id">group id</param>
        /// <param name="connection">opended sql connection</param>
        /// <returns></returns>
        internal List<int> DFGetByInvestorGroupID(int id, SqlConnection connection,SqlTransaction trans)
        {
            List<int> ids = new List<int>();
            DSTableAdapters.IGroupSecurityTableAdapter adap = new DSTableAdapters.IGroupSecurityTableAdapter();
            adap.Connection = connection;
            adap.Transaction = trans;
            DS.IGroupSecurityDataTable tb= adap.GetIGroupSecurityByInvestorGroupID(id);
            int count = tb.Rows.Count;
            for (int i = 0; i < count; i++)
            {
                ids.Add(tb[i].IGroupSecurityID);
            }

            return ids;
        }