示例#1
0
        public void SetUser(IEnumerable <string> userIds)
        {
            TkDebug.AssertEnumerableArgumentNullOrEmpty(userIds, "userIds", this);

            string userString = string.Join("|", userIds);

            ToUser = userString;
        }
示例#2
0
        public TableRelation(string[] masterFields, string[] detailFields,
                             RelationType type, MarcoConfigItem filterSql, string order)
        {
            TkDebug.AssertEnumerableArgumentNullOrEmpty(masterFields, "masterFields", null);
            TkDebug.AssertEnumerableArgumentNullOrEmpty(detailFields, "detailFields", null);

            fMasterFields = masterFields;
            fDetailFields = detailFields;
            fType         = type;
            FilterSql     = filterSql;
            OrderBy       = order;
        }
示例#3
0
        /// <summary>
        /// 创建数据表
        /// </summary>
        /// <param name="tableName">表名</param>
        /// <param name="fieldNames">字段序列</param>
        /// <returns>数据表</returns>
        public static DataTable CreateDataTable(string tableName, params string[] fieldNames)
        {
            TkDebug.AssertArgumentNullOrEmpty(tableName, "tableName", null);
            TkDebug.AssertEnumerableArgumentNullOrEmpty(fieldNames, "fieldNames", null);

            DataTable table = new DataTable(tableName)
            {
                Locale = ObjectUtil.SysCulture
            };

            foreach (string fieldName in fieldNames)
            {
                table.Columns.Add(new DataColumn(fieldName, typeof(string)));
            }
            return(table);
        }
示例#4
0
        /// <summary>
        /// 对DataRow中指定的字段进行赋值
        /// </summary>
        /// <param name="row">需要赋值的DataRow</param>
        /// <param name="names">指定的字段序列</param>
        /// <param name="values">相应的值</param>
        /// <example>例如:
        /// <code>
        /// DataSetUtil.SetRowValues(row, new string[] {"LD_NAME", "LD_DATE", "LD_USERID"},
        ///     new object[] {"Hello", DateTime.Now, Info.UserId});
        /// </code>
        /// </example>
        public static void SetRowValues(DataRow row, string[] names, params object[] values)
        {
            TkDebug.AssertArgumentNull(row, "row", null);
            TkDebug.AssertEnumerableArgumentNullOrEmpty(names, "names", null);
            TkDebug.AssertArgumentNull(values, "values", null);
            TkDebug.AssertArgument(names.Length == values.Length, "values", string.Format(ObjectUtil.SysCulture,
                                                                                          "参数names的个数是{0},参数values的个数是{1},两者个数不匹配,请确认", names.Length, values.Length), null);

            row.BeginEdit();
            try
            {
                for (int i = 0; i < names.Length; ++i)
                {
                    row[names[i]] = values[i] ?? DBNull.Value;
                }
            }
            finally
            {
                row.EndEdit();
            }
        }
示例#5
0
        public IParamBuilder CreateParamBuilder(string filterSql, string[] fields, params object[] values)
        {
            TkDebug.AssertEnumerableArgumentNullOrEmpty(fields, "fields", this);
            TkDebug.AssertEnumerableArgumentNull(values, "values", this);
            TkDebug.Assert(fields.Length == values.Length, string.Format(ObjectUtil.SysCulture,
                                                                         "参数fields和values的个数不匹配,fields的个数为{0},而values的个数为{1}",
                                                                         fields.Length, values.Length), this);

            List <IParamBuilder> list = new List <IParamBuilder>(fields.Length + 1);

            for (int i = 0; i < fields.Length; i++)
            {
                IParamBuilder builder = SqlParamBuilder.CreateEqualSql(Context,
                                                                       GetFieldInfo(fields[i]), values[i]);
                list.Add(builder);
            }
            if (!string.IsNullOrEmpty(filterSql))
            {
                list.Add(ParamBuilder.CreateSql(filterSql));
            }

            return(ParamBuilder.CreateParamBuilder(list));
        }