Esempio n. 1
0
        /// <summary>
        /// 通过名称设置DataSet参数
        /// </summary>
        /// <param name="parameterName">参数名称</param>
        /// <param name="value">参数值</param>
        public void SetDataSetParameter(string parameterName, DataSetBase dataset)
        {
            MainParameter mainParameter = GetParameter(parameterName, MainParameter.ParameterType.DataSet);

            if (mainParameter != null)
            {
                mainParameter.DataSet = dataset;
            }
        }
        /// <summary>
        /// 添加数据集至数据集仓库
        /// </summary>
        /// <param name="dataSet">数据集</param>
        public void AddDataSet(DataSetBase dataSet)
        {
            if (dataSet == null)
            {
                return;
            }

            Type type = dataSet.GetType();

            if (!DataSets.ContainsKey(type))
            {
                DataSets.Add(type, new List <DataSetBase>());
            }
            DataSets[type].Add(dataSet);
        }
Esempio n. 3
0
        /// <summary>
        /// 添加数据集至数据集仓库
        /// </summary>
        /// <param name="dataSet">数据集</param>
        public void AddDataSet(DataSetBase dataSet)
        {
            if (!dataSet)
            {
                throw new HTFrameworkException(HTFrameworkModule.DataSet, "不能添加空的数据集至仓库!");
            }

            Type type = dataSet.GetType();

            if (!DataSets.ContainsKey(type))
            {
                DataSets.Add(type, new List <DataSetBase>());
            }
            DataSets[type].Add(dataSet);
        }
 /// <summary>
 /// 获取某一类型的满足匹配条件的第一条数据集
 /// </summary>
 /// <param name="type">数据集类型</param>
 /// <param name="match">匹配条件</param>
 /// <param name="isCut">是否同时在数据集仓库中移除该数据集</param>
 /// <returns>数据集</returns>
 public DataSetBase GetDataSet(Type type, Predicate <DataSetBase> match, bool isCut = false)
 {
     if (DataSets.ContainsKey(type))
     {
         DataSetBase dataset = DataSets[type].Find(match);
         if (isCut && dataset)
         {
             DataSets[type].Remove(dataset);
         }
         return(dataset);
     }
     else
     {
         throw new HTFrameworkException(HTFrameworkModule.DataSet, "获取数据集失败:" + type.Name + " 并不是有效的数据集类型!");
     }
 }
Esempio n. 5
0
 /// <summary>
 /// 新建数据集并添加至数据集仓库
 /// </summary>
 /// <param name="type">数据集类型</param>
 /// <param name="data">填充数据</param>
 /// <returns>新建的数据集</returns>
 public DataSetBase CreateDataSet(Type type, JsonData data = null)
 {
     if (DataSets.ContainsKey(type))
     {
         DataSetBase dataSet = ScriptableObject.CreateInstance(type) as DataSetBase;
         if (data != null)
         {
             dataSet.Fill(data);
         }
         DataSets[type].Add(dataSet);
         return(dataSet);
     }
     else
     {
         throw new HTFrameworkException(HTFrameworkModule.DataSet, "新建数据集失败:" + type.Name + " 并不是有效的数据集类型!");
     }
 }
Esempio n. 6
0
        /// <summary>
        /// 从数据集仓库中移除数据集
        /// </summary>
        /// <param name="dataSet">数据集</param>
        public void RemoveDataSet(DataSetBase dataSet)
        {
            if (!dataSet)
            {
                throw new HTFrameworkException(HTFrameworkModule.DataSet, "不能移除空的数据集!");
            }

            Type type = dataSet.GetType();

            if (!DataSets.ContainsKey(type))
            {
                DataSets.Add(type, new List <DataSetBase>());
            }
            if (DataSets[type].Contains(dataSet))
            {
                DataSets[type].Remove(dataSet);
            }
        }
Esempio n. 7
0
 /// <summary>
 /// 根据索引获取某一类型的一条数据集
 /// </summary>
 /// <param name="type">数据集类型</param>
 /// <param name="index">索引</param>
 /// <param name="isCut">是否同时在数据集仓库中移除该数据集</param>
 /// <returns>数据集</returns>
 public DataSetBase GetDataSet(Type type, int index, bool isCut = false)
 {
     if (DataSets.ContainsKey(type))
     {
         if (index >= 0 && index < DataSets[type].Count)
         {
             DataSetBase dataset = DataSets[type][index];
             if (isCut)
             {
                 DataSets[type].RemoveAt(index);
             }
             return(dataset);
         }
         else
         {
             return(null);
         }
     }
     else
     {
         throw new HTFrameworkException(HTFrameworkModule.DataSet, "获取数据集失败:" + type.Name + " 并不是有效的数据集类型!");
     }
 }
Esempio n. 8
0
 /// <summary>
 /// 根据先后顺序获取某一类型的第一条数据集
 /// </summary>
 /// <param name="type">数据集类型</param>
 /// <param name="isCut">是否同时在数据集仓库中移除该数据集</param>
 /// <returns>数据集</returns>
 public DataSetBase GetDataSet(Type type, bool isCut = false)
 {
     if (_dataSets.ContainsKey(type))
     {
         if (_dataSets[type].Count > 0)
         {
             DataSetBase dataset = _dataSets[type][0];
             if (isCut)
             {
                 _dataSets[type].RemoveAt(0);
             }
             return(dataset);
         }
         else
         {
             return(null);
         }
     }
     else
     {
         throw new HTFrameworkException(HTFrameworkModule.DataSet, "获取数据集失败:" + type.Name + " 并不是有效的数据集类型!");
     }
 }
Esempio n. 9
0
 /// <summary>
 /// 从数据集仓库中移除数据集
 /// </summary>
 /// <param name="dataSet">数据集</param>
 public void RemoveDataSet(DataSetBase dataSet)
 {
     _helper.RemoveDataSet(dataSet);
 }
Esempio n. 10
0
 /// <summary>
 /// 添加数据集至数据集仓库
 /// </summary>
 /// <param name="dataSet">数据集</param>
 public void AddDataSet(DataSetBase dataSet)
 {
     _helper.AddDataSet(dataSet);
 }