コード例 #1
0
        protected List <InvoiceDetailFileTypeItem> ConvertDataReaderToList(OracleDataReader dr)
        {
            List <InvoiceDetailFileTypeItem> items = new List <InvoiceDetailFileTypeItem>();

            while (dr.Read())
            {
                InvoiceDetailFileTypeItem itm = new InvoiceDetailFileTypeItem();
                itm.Description   = dr["descr"].ToString();
                itm.FileExtension = dr["extension"].ToString();
                itm.Id            = dr["file_type"].ToString();
                itm.IsAvailable   = (dr["file_type"].ToString() == "Y");
                itm.Sql           = dr["sql"].ToString();
                items.Add(itm);
            }
            return(items);
        }
コード例 #2
0
 public override string Save(InvoiceDetailFileTypeItem item)
 {
     using (OracleConnection cnn = new OracleConnection(base.ConnectionString.Value))
         using (OracleCommand cmd = new OracleCommand())
         {
             cmd.CommandType = CommandType.Text;
             cmd.CommandText = String.Format("declare \r\n"
                                             + "  cnt number; \r\n"
                                             + "begin \r\n"
                                             + "  select  count(*) \r\n"
                                             + "  into    cnt \r\n"
                                             + "  from    {0}.file_type \r\n"
                                             + "  where file_type = :fileType; \r\n"
                                             + "\r\n"
                                             + "  if( cnt = 0 ) then \r\n"
                                             + "    insert into {0}.file_type (file_type, descr, is_available, extension, sql) \r\n"
                                             + "    values (:fileType, :descr, :isAvailable, :fileExtension, :sql); \r\n"
                                             + "  else \r\n"
                                             + "    update {0}.file_type \r\n"
                                             + "    set descr = :descr \r\n"
                                             + "       ,is_available = :isAvailable \r\n"
                                             + "       ,extension = :fileExtension \r\n"
                                             + "       ,sql = :sql \r\n"
                                             + "    where file_type = :fileType; \r\n"
                                             + "  end if; \r\n"
                                             + "end; \r\n"
                                             + "commit;"
                                             , base.SchemaName);
             OracleHelper.AddCommandParameter(cmd, ":fileType", item.Id, OracleType.Char, 4);
             OracleHelper.AddCommandParameter(cmd, ":descr", item.Description, OracleType.VarChar, 100);
             char isAvailable = item.IsAvailable ? 'Y' : 'N';
             OracleHelper.AddCommandParameter(cmd, ":isAvailable", isAvailable, OracleType.Char, 1);
             OracleHelper.AddCommandParameter(cmd, ":fileExtension", item.FileExtension, OracleType.VarChar, 4);
             OracleHelper.AddCommandParameter(cmd, ":sql", item.Sql, OracleType.VarChar, 4000);
             cmd.Connection = cnn;
             cnn.Open();
             cmd.ExecuteNonQuery();
             return(item.Id);
         }
 }