|
|
|
ODAC C# не может Double?
|
|||
|---|---|---|---|
|
#18+
Господа, а как из шарпа к ораклу принято подключаться? попробовал как рекомендуют, скачал последний ODAC и столкнулся с удивительной штукой: Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. Round в запросе лечит явный dr.GetDouble() тоже, но это не решение ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.07.2018, 08:54:46 |
|
||
|
ODAC C# не может Double?
|
|||
|---|---|---|---|
|
#18+
Таки проблема в том, что decimal в oracle имеет большую точность чем decimal в дотнете. и из коробки это не работает, разработчик odac не придумал ничего лучше чем невнятно валится в ошибку если вдруг придет число, которое odac не сможет переварить внутри себя. решения два. первое round или trunc в запросах для любой операции которая потенциально может вернуть число у которого много знаков и надеяться что никто этого не забудет. второе на клиенте грузить датаадапетром у которого ReturnProviderSpecificTypes = true и вручную приводить типы, для decimal понизить точность Код: c# 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2018, 10:50:46 |
|
||
|
|

start [/forum/search_topic.php?author=gdi777&author_mode=last_posts&do_search=1]: |
0ms |
get settings: |
5ms |
get forum list: |
11ms |
get settings: |
5ms |
get forum list: |
18ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
26ms |
get topic data: |
9ms |
get first new msg: |
18ms |
get forum data: |
2ms |
get page messages: |
42ms |
get tp. blocked users: |
1ms |
| others: | 1009ms |
| total: | 1150ms |

| 0 / 0 |
