// [OperationContract]
        public PackageData GetDataForGet(Int64 ClientId, Int64 SessionId, DataForGet DataForGet)
        {
            PackageData pd = new PackageData();

            using (var cnn = SqlExtension.NewSqlConnection)
            {
                using (var cmd = cnn.CreateCommand())
                {
                    cmd.CommandType = CommandType.StoredProcedure;
                    cmd.CommandText = String.Format("a2repl.get_{0}_for_client", DataForGet.TableName);
                    cmd.Parameters.AddWithValue("@clientid", ClientId);   // 0
                    cmd.Parameters.AddWithValue("@sessionid", SessionId); // 1
                    cmd.Parameters.AddWithValue("@id", DataForGet.Id);    // 2
                    using (var rdr = cmd.ExecuteReader())
                    {
                        do
                        {
                            var di = new DataTable(rdr);
                            while (rdr.Read())
                            {
                                ReadData(di, rdr);
                            }
                            if (pd.Tables == null)
                            {
                                pd.Tables = new List <DataTable>();
                            }
                            pd.Tables.Add(di);
                        } while (rdr.NextResult());
                    }
                }
            }
            pd.SetHasContent();
            return(pd);
        }
 // [OperationContract]
 public void SetDataForGetSent(Int64 ClientId, Int64 SessionId, DataForGet DataForGet)
 {
     using (var cnn = SqlExtension.NewSqlConnection)
     {
         using (var cmd = cnn.CreateCommand())
         {
             cmd.CommandType = CommandType.StoredProcedure;
             cmd.CommandText = String.Format("a2repl.set_{0}_sent_for_client", DataForGet.TableName);
             cmd.Parameters.AddWithValue("@clientid", ClientId);   // 0
             cmd.Parameters.AddWithValue("@sessionid", SessionId); // 1
             cmd.Parameters.AddWithValue("@id", DataForGet.Id);    // 2
             cmd.ExecuteNonQuery();
         }
     }
 }
 // [OperationContract]
 public DataForGet GetItemForGet(Int64 ClientId, Int64 SessionId)
 {
     using (var cnn = SqlExtension.NewSqlConnection)
     {
         using (var cmd = cnn.CreateCommandSP("a2repl.get_element_for_client"))
         {
             cmd.Parameters.AddWithValue("@clientid", ClientId);   // 0
             cmd.Parameters.AddWithValue("@sessionid", SessionId); // 1
             using (var rdr = cmd.ExecuteReader())
             {
                 if (rdr.Read())
                 {
                     var d = new DataForGet();
                     d.Id        = rdr.GetInt64(0);
                     d.TableName = rdr.GetString(1);
                     return(d);
                 }
             }
         }
     }
     return(null);
 }