1. C# / Говнокод #21560

    −21

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    using (var cmd = new OracleCommand("SB_TEST.GETCURRENCYRATES", con))
                                {
                                    cmd.CommandType = CommandType.StoredProcedure;
                                    cmd.Parameters.Add("CURRENCY", OracleDbType.Varchar2, currency, ParameterDirection.Input);
                                    OracleParameter p2 = cmd.Parameters.Add("refcur_out", OracleDbType.RefCursor, ParameterDirection.Output);
    
                                    using (var reader = cmd.ExecuteReader())
                                    {
                                        // TODO: Throw an exception if multiple rates returned
                                        while (reader.Read())
                                        {
                                            retVal = new CurrencyRate
                                            {
                                                CurrencyName = reader.GetString(0),
                                                Currency = Bis.Services.Utils.Helpers.Convertor.ConvertEnum<CurrencyCode>(reader.GetString(2)),
                                                CentralBankRate = reader.GetDecimal(3),
                                                SellRate = reader.GetDecimal(4),
                                                BuyRate = reader.GetDecimal(5)
                                            };
                                            cacheRates.SaveValue(retVal, RES.Cache.CacheConfigEnum.Short);
                                            return retVal;
                                        }
                                    }
                                    throw new BisServiceApplicationException(string.Format(
                                        "Ошибка работы с системой '{0}'. No currencyRates received for the requested currency: [" +
                                        currency.ToString() + "]", connectionStringName));
                                }

    Банковская жесть.

    Запостил: Bluk, 25 Октября 2016

    Комментарии (6) RSS

    Добавить комментарий