Esempio n. 1
0
 /// <summary>
 /// 将行数据填充到Json对象中
 /// </summary>
 /// <param name="row"></param>
 /// <param name="obj"></param>
 protected void FillRowToJsonObject(dpz3.db.Row row, dpz3.Json.JsonObject obj)
 {
     foreach (var item in row)
     {
         obj.String(item.Key, item.Value);
     }
 }
Esempio n. 2
0
 /// <summary>
 /// 创建一个行数据操作器
 /// </summary>
 /// <param name="row">行数据对象</param>
 public RowOperator Rower(dpz3.db.Row row = null)
 {
     if (row == null)
     {
         row = new dpz3.db.Row();
     }
     return(OnRowerCreate(row));
 }
Esempio n. 3
0
 /// <summary>
 /// 将行数据填充到Json对象中
 /// </summary>
 /// <param name="row"></param>
 /// <param name="obj"></param>
 protected void RenderData(dpz3.db.Row row, dpz3.Json.JsonObject obj = null)
 {
     if (dpz3.Object.IsNull(obj))
     {
         obj = JResponse.Data;
     }
     foreach (var item in row)
     {
         obj.String(item.Key, item.Value);
     }
 }
Esempio n. 4
0
 /// <summary>
 /// 返回一个数据行
 /// </summary>
 /// <param name="row"></param>
 /// <param name="msg"></param>
 /// <returns></returns>
 protected Result.Jttp RowSuccess(dpz3.db.Row row, string msg = null)
 {
     Response.Result = 1;
     if (!msg.IsNoneOrNull())
     {
         Response.Message = msg;
     }
     foreach (var item in row)
     {
         Response.Data.String(item.Key, item.Value);
     }
     return(new Result.Jttp()
     {
         Content = Response
     });
 }
Esempio n. 5
0
        // 安装或更新数据库
        private static void UpdateDatabase(dpz3.db.Connection dbc, dpz3.XOrm.StandaloneTable table)
        {
            // 定义表映射
            var Xorms = dpz3.db.OrmMapper.Table("Xorms");

            if (!dbc.CheckTable("Xorms"))
            {
                if (table.Name == "Xorms")
                {
                    Console.WriteLine($"[+] 安装数据表 {table.Name} ...");
                    // 生成字段定义集合
                    List <dpz3.db.SqlUnits.FieldDefine> list = new List <dpz3.db.SqlUnits.FieldDefine>();
                    foreach (var field in table.Fields)
                    {
                        dpz3.db.SqlUnits.FieldDefine fieldDefine = new dpz3.db.SqlUnits.FieldDefine();
                        fieldDefine.Name  = field.Name;
                        fieldDefine.Type  = field.DataType;
                        fieldDefine.Size  = field.DataSize;
                        fieldDefine.Float = field.DataFloat;
                        list.Add(fieldDefine);
                    }
                    // 添加表格
                    dbc.CreateTable(table.Name, list.ToArray());
                    // 更新缓存信息
                    var rowInsert = new dpz3.db.Row();
                    rowInsert["Name"]        = table.Name;
                    rowInsert["Guid"]        = Guid.NewGuid().ToString();
                    rowInsert["Version"]     = table.Version;
                    rowInsert["Title"]       = table.Title;
                    rowInsert["Description"] = table.Description;
                    dbc.Insert(Xorms, rowInsert);
                }
                else
                {
                    Console.WriteLine($"[!] 尚未找到Xorms表,请先安装xorm-basic包。");
                    return;
                }
            }
            else
            {
                // 判断表信息是否存在
                var    row        = dbc.Select(Xorms).Where(Xorms["Name"] == table.Name).GetRow();
                string rowVersion = "";
                if (!row.IsEmpty)
                {
                    rowVersion = row["Version"];
                }
                if (rowVersion != table.Version)
                {
                    // 判断表是否存在
                    if (dbc.CheckTable(table.Name))
                    {
                        Console.WriteLine($"[+] 更新数据表 {table.Name} ...");
                        // 生成字段定义集合
                        foreach (var field in table.Fields)
                        {
                            dpz3.db.SqlUnits.FieldDefine fieldDefine = new dpz3.db.SqlUnits.FieldDefine();
                            fieldDefine.Name  = field.Name;
                            fieldDefine.Type  = field.DataType;
                            fieldDefine.Size  = field.DataSize;
                            fieldDefine.Float = field.DataFloat;
                            // 判断字段是否存在
                            if (dbc.CheckTableFiled(table.Name, field.Name))
                            {
                                // 更新字段
                                dbc.UpdateTableFiled(table.Name, field.Name, fieldDefine);
                            }
                            else
                            {
                                // 添加字段
                                dbc.AddTableFiled(table.Name, fieldDefine);
                            }
                        }
                    }
                    else
                    {
                        Console.WriteLine($"[+] 创建数据表 {table.Name} ...");
                        // 生成字段定义集合
                        List <dpz3.db.SqlUnits.FieldDefine> list = new List <dpz3.db.SqlUnits.FieldDefine>();
                        foreach (var field in table.Fields)
                        {
                            dpz3.db.SqlUnits.FieldDefine fieldDefine = new dpz3.db.SqlUnits.FieldDefine();
                            fieldDefine.Name  = field.Name;
                            fieldDefine.Type  = field.DataType;
                            fieldDefine.Size  = field.DataSize;
                            fieldDefine.Float = field.DataFloat;
                            list.Add(fieldDefine);
                        }
                        // 添加表格
                        dbc.CreateTable(table.Name, list.ToArray());
                    }
                    // 操作表缓存信息
                    if (row.IsEmpty)
                    {
                        // 添加表缓存信息
                        var rowInsert = new dpz3.db.Row();
                        rowInsert["Name"]        = table.Name;
                        rowInsert["Guid"]        = Guid.NewGuid().ToString();
                        rowInsert["Version"]     = table.Version;
                        rowInsert["Title"]       = table.Title;
                        rowInsert["Description"] = table.Description;
                        dbc.Insert(Xorms, rowInsert).Exec();
                    }
                    else
                    {
                        // 更新表缓存信息
                        var rowUpdate = new dpz3.db.Row();
                        rowUpdate["Version"]     = table.Version;
                        rowUpdate["Title"]       = table.Title;
                        rowUpdate["Description"] = table.Description;
                        dbc.Update(Xorms, rowUpdate).Where(Xorms["ID"] == row["ID"]).Exec();
                    }
                }
            }
        }
Esempio n. 6
0
 /// <summary>
 /// 创建一个行数据操作器
 /// </summary>
 /// <param name="row"></param>
 /// <returns></returns>
 protected virtual RowOperator OnRowerCreate(dpz3.db.Row row)
 {
     throw new Exception("尚未定义此操作");
 }