Esempio n. 1
0
        //static object LockObject = new object();
        public static bool AddInfo(int typeID, InfoClass info, ProductClass product, Dictionary <int, string> keyvalues)
        {
            string       sql = "insert into T_Info (Title, TypeID) values ('" + info.Title + "', " + info.TypeId.ToString() + ")";
            OleDbCommand cmd = OleDAL.Connection.CreateCommand();

            cmd.Transaction = OleDAL.Connection.BeginTransaction(IsolationLevel.RepeatableRead);
            bool insert = OleDAL.ExecuteNonQuery(sql, cmd);

            if (insert)
            {
                int             infoID = OleDAL.GetMaxID("ID", "T_Info");
                List <KeyClass> keys   = GetKeys(infoID, false);
                foreach (KeyClass key in keys)
                {
                    string sql1 = "insert into T_KeyValue (KeyId, Value) values (@KeyId, @Value)";
                    cmd.Parameters.AddWithValue("@KeyId", key.Id);
                    cmd.Parameters.AddWithValue("@Value", keyvalues[key.Id]);
                    OleDAL.ExecuteNonQuery(sql1, cmd);
                }
                string sql2 = "insert into T_Product (Picture) values (@Picture)";
                cmd.Parameters.AddWithValue("@Picture", GetBytesFromImageList(product.Picture));
                bool insert1 = OleDAL.ExecuteNonQuery(sql2, cmd);
                if (insert1)
                {
                    OleDAL.CommitTransaction(cmd);
                    return(true);
                }
            }
            return(false);
        }
Esempio n. 2
0
 public static int GetLastTypeId()
 {
     return(OleDAL.GetMaxID("ID", "T_Type"));
 }
Esempio n. 3
0
 public static int GetLastKeyId()
 {
     return(OleDAL.GetMaxID("ID", "T_KeyInfo"));
 }