Exemplo n.º 1
0
        CacheConnection GetConnection(bool firstCall = true)
        {
            try
            {
                if (CacheConnect == null)
                {
                    string connStr = ConfigurationManager.ConnectionStrings["CacheDB"].ConnectionString;
                    CacheConnect = new CacheConnection();
                    CacheConnect.ConnectionString = connStr;
                }

                if (CacheConnect.State == System.Data.ConnectionState.Closed)
                {
                    CacheConnect.Open();
                }
            }
            catch (CacheInternalException e)
            {
                if (firstCall)
                {
                    Thread.Sleep(30);
                    GetConnection(false);
                }
            }


            return(CacheConnect);
        }
        public void WorklistDataItem_OpenId_ShouldReturnAnInstanceOfWorklistDataItem()
        {
            var cacheConnect = new CacheConnection();

            cacheConnect.ConnectionString = "Server=Cache3; Namespace = RMH; Password = PASSWORD01; User ID = GAOG;";
            cacheConnect.Open();

            GGTestProduct product = null;

            try
            {
                product = GGTestProduct.OpenId(cacheConnect, "1");
            }
            catch (Exception e)
            {
                Assert.Fail(e.Message);
            }
            finally
            {
                if (product != null)
                {
                    Assert.AreEqual("Test Product 1", product.Name, "product name does not matched");
                    Assert.AreEqual("Test", product.Category.ToString(), "product category does not matched");

                    product.Close();
                }
                else
                {
                    Assert.Inconclusive("Test data does not exist");
                }

                cacheConnect.Close();
            }
        }
Exemplo n.º 3
0
        //数据库连接 ZAM 2015-5-22
        public bool Connect()
        {
            bool ret = false;

            try
            {
                DataConnection.count++;
                CacheConnectionObject.Open();

                /*#region<"CachePool Monitor">
                 * // CachePool Monitor ZAM 2015-5-22
                 * int activeCount = CachePoolManager.ActiveConnectionCount;
                 * int idleCount = CachePoolManager.IdleCount(CacheConnectionObject);
                 * int inUseCount = CachePoolManager.InUseCount(CacheConnectionObject);
                 *
                 * HygeiaComUtility.WriteClientLog(HygeiaEnum.LogType.ErrorLog, "Service: " + this.serviceID + " DCount: " + DataConnection.count + " CID: " + ConnectID + " State: " + CacheConnectionObject.State.ToString() + " ID: " + CacheConnectionObject.CacheJobID, "");
                 * HygeiaComUtility.WriteClientLog(HygeiaEnum.LogType.ErrorLog, "Active " + activeCount + " idle: " + idleCount + " inUse:" + inUseCount + " ", "");
                 *
                 #endregion*/

                ret = true;
            }
            catch (Exception ex)
            {
                HygeiaComUtility.WriteClientLog(HygeiaEnum.LogType.ErrorLog, "", "数据库连接失败! error information : " + ex.Message + Environment.NewLine + ex.StackTrace);
                throw ex;
            }
            return(ret);
        }
Exemplo n.º 4
0
        public static List <QuestionAnswer> GetQuestionAnswer(string OEORI_RowId)
        {
            List <QuestionAnswer> listQuestionAnswer = new List <QuestionAnswer>();

            using (var con = new CacheConnection(conString))
            {
                con.Open();
                using (var cmd = new CacheCommand(QueryString.GetQuesAns(OEORI_RowId), con))
                {
                    using (var reader = cmd.ExecuteReader())
                    {
                        while (reader.Read())
                        {
                            QuestionAnswer qa    = new QuestionAnswer();
                            string         item  = reader["QUES_Code"].ToString();
                            string[]       items = item.Split('_');
                            qa.OrdItemType = items.Length > 1 ? items[1].ToString() : "";
                            qa.QUES        = items.Length > 2 ? items[2].ToString() : "";
                            qa.QUES_Desc   = reader["QUES_Desc"].ToString();
                            qa.QA_Answer   = reader["QA_Answer"].ToString();

                            listQuestionAnswer.Add(qa);
                        }
                    }
                }
            }

            return(listQuestionAnswer);
        }
Exemplo n.º 5
0
        public static Patient GetPatient(string epiRowId)
        {
            Patient pt = new Patient();

            using (var con = new CacheConnection(conString))
            {
                con.Open();
                using (var cmd = new CacheCommand(QueryString.GetPatient(epiRowId), con))
                {
                    using (var reader = cmd.ExecuteReader())
                    {
                        if (reader.Read())
                        {
                            string hn = reader["PAPMI_No"].ToString();
                            pt.HN     = hn;
                            pt.Name   = string.IsNullOrEmpty(reader["TTL_Desc"].ToString()) ? reader["PAPMI_Name"].ToString() + " " + reader["PAPMI_Name2"].ToString() : reader["TTL_Desc"].ToString() + reader["PAPMI_Name"].ToString() + " " + reader["PAPMI_Name2"].ToString();
                            pt.Gender = reader["CTSEX_Desc"].ToString();
                            DateTime dt = Convert.ToDateTime(reader["PAPMI_DOB"].ToString());
                            pt.DOB       = dt.ToString("dd/MM/") + dt.Year.ToString();
                            pt.EpisodeNo = reader["PAADM_ADMNo"].ToString();
                            pt.Age       = reader["PAPER_AgeYr"].ToString();
                            pt.Allergys  = _ICPOERepository.GetAllergys(hn);
                        }
                    }
                }
            }

            return(pt);
        }
Exemplo n.º 6
0
        public static DataTable DTBindProcedure(string procedureName, string conString, Dictionary <string, object> para)
        {
            dt = new DataTable();

            using (var con = new CacheConnection(conString))
            {
                con.Open();
                using (var cmd = new CacheCommand(procedureName, con))
                {
                    cmd.CommandType = CommandType.StoredProcedure;
                    foreach (KeyValuePair <string, object> kvp in para)
                    {
                        cmd.Parameters.Add(kvp.Key, kvp.Value);
                    }
                    if (para != null)
                    {
                        using (CacheDataReader dr = cmd.ExecuteReader())
                        {
                            dt.Load(dr);
                            return(dt);
                        }
                    }
                }
            }

            return(dt);
        }
Exemplo n.º 7
0
        /// <summary>
        /// Returns the ADO.NET IDbCommand for this database.
        /// </summary>
        /// <param name="connectionString">Database connection string</param>
        /// <returns></returns>
        public override IDbConnection CreateNewDbConnection(string connectionString)
        {
            var con = new CacheConnection(connectionString);

            con.Open();
            con.SetQueryRuntimeMode(InterSystems.Data.CacheTypes.QueryRuntimeMode.LOGICAL);
            return(con);
        }
Exemplo n.º 8
0
        private CacheConnection BuildConnection(DbContext context)
        {
            var connection = new CacheConnection();

            connection.ConnectionString = context.Database.Connection.ConnectionString;
            connection.Open();

            return(connection);
        }
Exemplo n.º 9
0
        static void Main(string[] args)
        {
            CacheConnection CacheConnect = new CacheConnection();

            CacheConnect.ConnectionString = "Server=192.168.1.10;Port=5641;User=_SYSTEM;Password=SYS;Namespace=company2;Pooling=false;";
            CacheConnect.Open();

            //Lock Query List Example
            Console.WriteLine("Lock Query List Example");
            CacheDataAdapter cadpt    = new CacheDataAdapter();
            DataSet          ds       = new DataSet();
            CacheCommand     cmdCache = new CacheCommand("%SYS.LockQuery_List", CacheConnect);

            cmdCache.CommandType = CommandType.StoredProcedure;
            cadpt.SelectCommand  = cmdCache;
            cadpt.Fill(ds, "Locks");
            bool   locked = false;
            int    id     = 13395;
            string table  = "Invoice";

            foreach (DataRow row in ds.Tables["Locks"].Rows) //loop through locks
            {
                Console.WriteLine(row["LockString"]);
                if (row["LockString"].Equals("^oo" + table + "D(" + id + ")")) //depends on class storage definition data location
                {
                    locked = true;
                    break;
                }
            }
            if (locked)
            {
                Console.WriteLine("Record is locked");
            }
            else
            {
                Console.WriteLine("Record is unlocked");
            }
            Console.WriteLine();
            //Process Query Example
            Console.WriteLine("Process Query Example");
            CacheCommand cmdCache2 = new CacheCommand("%SYS.ProcessQuery_CONTROLPANEL", CacheConnect);

            cmdCache2.CommandType = CommandType.StoredProcedure;
            CacheParameter JNparam = new CacheParameter("JobNumber", CacheDbType.Int);

            JNparam.Value = 1;
            cmdCache2.Parameters.Add(JNparam);
            cadpt.SelectCommand = cmdCache2;
            cadpt.Fill(ds, "Processes");
            foreach (DataRow row in ds.Tables["Processes"].Rows) //loop through processes
            {
                Console.WriteLine("Job Number: " + row["Job#"] + ", Namespace: " + row["Nspace"]);
            }
        }
Exemplo n.º 10
0
        public static List <QAModel> GetQAModel(string OEORI_RowId)
        {
            List <QAModel> results = new List <QAModel>();

            using (var con = new CacheConnection(conString))
            {
                con.Open();
                using (var cmd = new CacheCommand(QueryString.GetQuesAns(OEORI_RowId), con))
                {
                    using (var reader = cmd.ExecuteReader())
                    {
                        string type = string.Empty;
                        while (reader.Read())
                        {
                            QAModel  qam    = new QAModel();
                            string[] spilts = reader["QUES_Code"].ToString().Split('_');

                            if (Regex.IsMatch(reader["QUES_Desc"].ToString(), @"<[^>]*>"))
                            {
                                type = spilts.Length > 2 ? spilts[2] : "";

                                qam.QUES_Code        = reader["QUES_Code"].ToString();
                                qam.QUES_Desc        = reader["QUES_Desc"].ToString();
                                qam.QA_Answer        = reader["QA_Answer"].ToString();
                                qam.QUES_ControlType = reader["QUES_ControlType"].ToString();
                                qam.QUES_Type        = type;

                                results.Add(qam);
                            }
                            else
                            {
                                if (!string.IsNullOrEmpty(reader["QA_Answer"].ToString()))
                                {
                                    qam.QUES_Code        = reader["QUES_Code"].ToString();
                                    qam.QUES_Desc        = reader["QUES_Desc"].ToString();
                                    qam.QA_Answer        = reader["QA_Answer"].ToString();
                                    qam.QUES_ControlType = reader["QUES_ControlType"].ToString();
                                    qam.QUES_Type        = type;

                                    results.Add(qam);
                                }
                            }
                        }
                    }
                }
            }

            return(results);
        }
Exemplo n.º 11
0
        public static DataTable DTBindDataCommand(string cmdString, string conString)
        {
            DataTable dt = new DataTable();

            using (var con = new CacheConnection(conString))
            {
                con.Open();
                using (var adt = new CacheDataAdapter(cmdString, conString))
                {
                    adt.Fill(dt);
                }
            }

            return(dt);
        }
Exemplo n.º 12
0
        public static DataSet DSBindDataCommand(string cmdString, string conString)
        {
            DataSet ds = new DataSet();

            using (var con = new CacheConnection(conString))
            {
                con.Open();
                using (var adt = new CacheDataAdapter(cmdString, con))
                {
                    adt.Fill(ds);
                }
            }

            return(ds);
        }
Exemplo n.º 13
0
        public static string BindDataCommand(string cmdString, string conString)
        {
            string result = string.Empty;

            using(var con = new CacheConnection(conString))
            {
                con.Open();
                using(var cmd = new CacheCommand(cmdString, con))
                {
                    result = cmd.ExecuteScalar().ToString();
                }
            }

            return result;
        }
Exemplo n.º 14
0
        public static string ExecuteScalarBindDataCommand(string cmdString, string connectionString)
        {
            string result = string.Empty;

            using (var con = new CacheConnection(connectionString))
            {
                using (var cmd = new CacheCommand(cmdString, con))
                {
                    con.Open();
                    result = Convert.ToString(cmd.ExecuteScalar());
                }
            }

            return(result);
        }
Exemplo n.º 15
0
        static void Main(string[] args)
        {
            string    connString = "Server=192.168.1.10;Port=5641;User=_SYSTEM;Password=SYS;Namespace=company2;Pooling=false;";
            const int ErrLogID   = 354159;

            Console.WriteLine("\nProgram starting.");

            try
            {
                CacheConnection conn = new CacheConnection(connString);

                conn.Open();

                var locked = Lock(conn, "ErrLog", ErrLogID);

                if (locked != null)
                {
                    Console.WriteLine("Lock Successfully");
                }
                //Doing things

                //another program
                //Now another program is trying to edit the same row. I want to check if the row is locked.
                CacheConnection conn2 = new CacheConnection(connString);

                conn2.Open();

                var startTime = DateTime.Now;
                Console.WriteLine(startTime.ToString());
                locked = Lock(conn2, "ErrLog", ErrLogID);
                if (locked == null)
                {
                    Console.WriteLine("The row is locked");
                }
                var endTime = DateTime.Now;
                Console.WriteLine(endTime.ToString());
                var diff = endTime.Subtract(startTime);
                var res  = String.Format("{0}:{1}:{2}", diff.Hours, diff.Minutes, diff.Seconds);
                Console.WriteLine($"Time Spend on lock checking {res}");
            }
            catch (Exception ee)
            {
                Console.WriteLine("ERROR: " + ee.Message);
            }

            Console.WriteLine("Program exited.");
        }
Exemplo n.º 16
0
        //数据库连接 ZAM 2015-5-22
        public bool Connect()
        {
            bool ret = false;

            try
            {
                DataConnection.count++;
                CacheConnectionObject.Open();
                ret = true;
            }
            catch (Exception ex)
            {
                HygeiaComUtility.WriteClientLog(HygeiaEnum.LogType.ErrorLog, "", "数据库连接失败! error information : " + ex.Message + Environment.NewLine + ex.StackTrace);
                throw ex;
            }
            return(ret);
        }
Exemplo n.º 17
0
        public static Tuple <User, string> GetUser(string username, string password)
        {
            var    model   = new User();
            string message = string.Empty;

            var query = TrakCareQuery.GetUser(username);

            using (CacheConnection con = new CacheConnection(Constants.Cache))
            {
                con.Open();
                using (CacheCommand cmd = new CacheCommand(query.Item1, con))
                {
                    foreach (KeyValuePair <string, string> pair in query.Item2)
                    {
                        var key = pair.Key;
                        cmd.AddInputParameters(new { key = pair.Value });
                    }

                    using (var reader = cmd.ExecuteReader())
                    {
                        if (reader.Read())
                        {
                            User user = new User()
                            {
                                SSUSR_Initials = reader["SSUSR_Initials"].ToString(),
                                SSUSR_Name     = reader["SSUSR_Name"].ToString(),
                                SSUSR_Password = reader["SSUSR_Password"].ToString()
                            };

                            if (Helper.CheckPassword(user, password))
                            {
                                model   = user;
                                message = "Login Success.";
                            }
                            else
                            {
                                message = "Login fail.";
                            }
                        }
                    }
                }
            }

            return(new Tuple <User, string>(model, message));
        }
Exemplo n.º 18
0
        static void Main(string[] args)
        {
            CacheConnection CacheConnect = new CacheConnection();

            CacheConnect.ConnectionString = "Server = 192.168.1.10; "
                                            + "Port = 5641; " + "Namespace = COMPANY2; "
                                            + "Password = SYS; " + "User ID = _SYSTEM;";
            CacheConnect.Open();

            var startTime = DateTime.Now;

            CacheConnect.DynamicMode = true;
            CacheMethodSignature mtdSignature = CacheConnect.GetMtdSignature();

            mtdSignature.Clear();
            mtdSignature.Add(375399, false); //id
            mtdSignature.Add(0, false);      //exclusive lock
            mtdSignature.Add(0, false);      //immediate timeout
            mtdSignature.SetReturnType(CacheConnect, ClientTypeId.tStatus);
            CacheObject.RunClassMethod(CacheConnect, "User.Customer", "%LockId", mtdSignature);
            CacheStatus status = (CacheStatus)((CacheStatusReturnValue)(mtdSignature.ReturnValue)).Value;

            if (status.IsOK)
            {
                Console.WriteLine("Lock acquired");

                Console.ReadLine();

                mtdSignature.Clear();
                mtdSignature.Add(1, false); //id
                mtdSignature.SetReturnType(CacheConnect, ClientTypeId.tStatus);
                CacheObject.RunClassMethod(CacheConnect, "Sample.Person", "%UnlockId", mtdSignature);
                Console.WriteLine("Unlocked");
            }
            else
            {
                Console.WriteLine("Already Locked");
            }
            var endTime = DateTime.Now;
            var diff    = endTime.Subtract(startTime);
            var res     = String.Format("{0} milliseconds", diff.TotalMilliseconds);

            Console.WriteLine($"Time Spend on lock checking: {res}");
            CacheConnect.Close();
        }
Exemplo n.º 19
0
 public static CacheConnection GetConnection()
 {
     if (_connection == null)
     {
         try
         {
             _connection = new CacheConnection();
             _connection.ConnectionString = "Server=localhost; Port=1972; Namespace=USER;" +
                                            "Password=qazwsx001; User ID=_SYSTEM;";
             _connection.Open();
         }
         catch (Exception ex)
         {
             MessageBox.Show("Connection error: " + ex.Message);
         }
     }
     return(_connection);
 }
Exemplo n.º 20
0
        public void connect(String server, String port, String userid, String password, String nspace)
        {
            try
            {
                // Create a connection to Cache
                conn = new CacheConnection();

                string cacheConnectString = "Server = " + server + "; Log File=cprovider.log;Port=" + port + "; Namespace=" + nspace + "; Password = "******";User ID = " + userid + ";";
                // Cache server Connection Information
                conn.ConnectionString = cacheConnectString;
                //Open a Connection to Cache
                conn.Open();
            }

            catch (Exception err)
            {
                MessageBox.Show("ERROR: " + err.Message);
            }
        }
Exemplo n.º 21
0
        static void Main(string[] args)
        {
            // Create a connection to Cache
            CacheConnection conn = new CacheConnection();

            // Cache server Connection Information
            // Set Server to your IP address and port to Cache SuperServer port, Log File is optional
            conn.ConnectionString = "Server = localhost; Log File=cprovider.log;Port=1972; Namespace=Samples; Password = SYS; User ID = _SYSTEM;";

            //Open a Connection to Cache
            conn.Open();

            CacheMethodSignature ms = new CacheMethodSignature();

            ms.SetReturnType(conn, ClientTypeId.tString);
            CacheObject.RunClassMethod(conn, "%SYSTEM.Version", "GetVersion", ms);

            Console.Write("ReturnValue = " + ms.ReturnValue._Value);

            conn.Close();
        }
Exemplo n.º 22
0
        private void TestConnection()
        {
            try
            {
                CacheConnection cacheConnection = new CacheConnection();
                cacheConnection.ConnectionString = String.Format(
                                                                "Server = {0};Port = 1972;Namespace=SAMPLES;Password={1}; User ID={2}",
                                                                ConnectionHost,
                                                                ConnectionPass,
                                                                ConnectionUser);

                cacheConnection.Open();
                if (cacheConnection.State == System.Data.ConnectionState.Open)
                {
                    // ViewModelNotification = String.Format("Successfully connected to {0}!",ConnectionHost);
                }
                cacheConnection.Close();
            }
            catch (Exception ex)
            {
                //ViewModelNotification = ex.Message;
            }
        }