示例#1
0
        private static IList <CubeItem> GetCubes(string procedure, List <KeyValuePair <string, object> > parameters = null)
        {
            IList <CubeItem> cubes = new List <CubeItem>();

            using (SqlConnection connection = new SqlConnection(_connectionString)) {
                using (SqlCommand cmd = new SqlCommand(procedure, connection)) {
                    cmd.CommandType = CommandType.StoredProcedure;

                    if (parameters != null)
                    {
                        parameters.ForEach(parameter =>
                                           cmd.Parameters.AddWithValue(parameter.Key, parameter.Value));
                    }

                    connection.Open();
                    SqlDataReader dr = cmd.ExecuteReader();
                    while (dr.Read())
                    {
                        CubeItem cubeItem = new CubeItem {
                            Id        = (int)dr["Id"],
                            CubeType  = dr["CubeType"].ToString(),
                            KeyName   = dr["KeyName"].ToString(),
                            ParentKey = dr["ParentKey"].ToString(),
                            //ModifiedDate = (DateTime)dr["ModifiedDate"],
                            CubeValue = dr["CubeValue"].ToString()
                        };

                        cubes.Add(cubeItem);
                    }
                    connection.Close();
                    return(cubes);
                }
            }
        }
示例#2
0
        public static CubeItem GetCubeWithChildren(string parentKey)
        {
            CubeItem cube = GetCubes("GetCubeByKey", CreateParameterList("KeyName", parentKey)).FirstOrDefault();

            IList <CubeItem> children = GetCubes("GetCubesByParentKey", CreateParameterList("ParentKey", parentKey)).Where(child => child.CubeType != "CubeData").ToList();

            cube.Cubes = children;
            return(cube);
        }
示例#3
0
        public Stream Test(string keyName, string parentKey, string cubeType, string cubeValue)
        {
            var cube = new CubeItem {
                CubeType  = cubeType,
                CubeValue = cubeValue,
                KeyName   = keyName,
                ParentKey = parentKey
            };

            var newId = Dao.Create(cube);

            cube.Id = newId;
            return(ConvertToJsonStream(cube));
        }
示例#4
0
        public static int Create(CubeItem cubeItem)
        {
            int id = 0;
            using (SqlConnection connection = new SqlConnection(_connectionString)) {
                using (SqlCommand command = new SqlCommand("CreateCube", connection)) {
                    command.CommandType = CommandType.StoredProcedure;
                    command.Parameters.AddWithValue("KeyName", cubeItem.KeyName);
                    command.Parameters.AddWithValue("CubeType", cubeItem.CubeType);
                    command.Parameters.AddWithValue("ParentKey", cubeItem.ParentKey);
                    command.Parameters.AddWithValue("CubeValue", cubeItem.CubeValue);

                    connection.Open();
                    var result = command.ExecuteScalar();
                    int.TryParse(result.ToString(), out id);

                    connection.Close();
                }
            }
            return id;
        }
示例#5
0
        public static int Create(CubeItem cubeItem)
        {
            int id = 0;

            using (SqlConnection connection = new SqlConnection(_connectionString)) {
                using (SqlCommand command = new SqlCommand("CreateCube", connection)) {
                    command.CommandType = CommandType.StoredProcedure;
                    command.Parameters.AddWithValue("KeyName", cubeItem.KeyName);
                    command.Parameters.AddWithValue("CubeType", cubeItem.CubeType);
                    command.Parameters.AddWithValue("ParentKey", cubeItem.ParentKey);
                    command.Parameters.AddWithValue("CubeValue", cubeItem.CubeValue);

                    connection.Open();
                    var result = command.ExecuteScalar();
                    int.TryParse(result.ToString(), out id);

                    connection.Close();
                }
            }
            return(id);
        }
示例#6
0
        private static IList<CubeItem> GetCubes(string procedure, List<KeyValuePair<string, object>> parameters = null) {
            IList<CubeItem> cubes = new List<CubeItem>();

            using (SqlConnection connection = new SqlConnection(_connectionString)) {

                using (SqlCommand cmd = new SqlCommand(procedure, connection)) {
                    cmd.CommandType = CommandType.StoredProcedure;

                    if (parameters != null) {
                        parameters.ForEach(parameter =>
                                           cmd.Parameters.AddWithValue(parameter.Key, parameter.Value));
                    }

                    connection.Open();
                    SqlDataReader dr = cmd.ExecuteReader();
                    while (dr.Read()) {
                        CubeItem cubeItem = new CubeItem {
                            Id = (int)dr["Id"],
                            CubeType = dr["CubeType"].ToString(),
                            KeyName = dr["KeyName"].ToString(),
                            ParentKey = dr["ParentKey"].ToString(),
                            //ModifiedDate = (DateTime)dr["ModifiedDate"],
                            CubeValue = dr["CubeValue"].ToString()
                        };

                        cubes.Add(cubeItem);
                    }
                    connection.Close();
                    return cubes;
                }
            }
        }
示例#7
0
 public Stream Update(string id, CubeItem instance)
 {
     throw new NotImplementedException();
 }