@Fsharp_chat

Страница 717 из 772
Alex
17.09.2018
03:13:53
а понятно, быть может. Еще обратил внимание, что wcf возвращаемый int в json отображает как число в респонс безо всяких {}. Этого провайдер не понял, а как настроить я не нашел. пришлось городить огород с httpClient-ом.

Friedrich
17.09.2018
03:14:44
А что должно быть в сгенерированном типе для числа?

По-моему, это был бы просто алиас для int :)

Grigoriy
17.09.2018
04:20:49
Привет!

Google
Alex
17.09.2018
04:38:58
А что должно быть в сгенерированном типе для числа?
наверно при единичном значении json подразумевается, что 1 и {1} одно и тоже, например воздвращать {Id = 1} или Some(1)

Friedrich
17.09.2018
04:39:38
По спецификации JSON, примитивные значения (не объекты) разрешены в качестве корневых в документе.

Alex
17.09.2018
04:40:29
т.е. Root = 1?

Friedrich
17.09.2018
04:40:33
Поэтому int в качестве рута не должен отличаться от int в качестве поля объекта, я так считаю.

т.е. Root = 1?
42 — это валидный JSON.

Просто приходит тебе респонс, а в нём написано 42 или "Hello", ну или [1,2,3]. Это валидно.

Vladimir
17.09.2018
05:08:35
Браузерный метод .json на респонсе валится от такого)

Roman
17.09.2018
05:50:53
https://twitter.com/brandewinder/status/1041422041490944000?s=19

Friedrich
17.09.2018
06:06:29
Браузерный метод .json на респонсе валится от такого)
Мб content-type неправильно настроен? Не должен валиться!

Roman
17.09.2018
06:11:24
@sergey_tihon спасибо, за публикацию)

Vladimir
17.09.2018
06:45:19
Мб content-type неправильно настроен? Не должен валиться!
надо пробовать, но я помню что были проблемы) И в трайкетч заворачивал, и если сваливалось то читал через .text

Google
Alex
17.09.2018
08:10:00
Severity Code Description Project File Line Suppression State Error FS3033 The type provider 'ProviderImplementation.JsonProvider' reported an error: Cannot read sample JSON from 'http://localhost/PulseService/web/GetOffsetByTime/': Invalid JSON starting at character 0, snippet = ---- 31337 ----- json = ------ 31337 ------- testApp C:\tmp\testApp\Program.fs 31 Active

= JsonProvider<"""1"""> аналогично

Vasily
17.09.2018
08:13:44
Фигурные скобки никто не отменял

В теории

Ayrat
17.09.2018
08:14:14
ну вообще это проблема JsonProvider

1 - это валидный json

просто 1

не { 1 }

и {1} вроде не валидный

Vasily
17.09.2018
08:15:06
Ну ты прав

Alex
17.09.2018
08:15:13


Vlad
17.09.2018
08:15:13
Vasily
17.09.2018
08:15:39
Блин,надо спеку почитать

А то туплю

Ayrat
17.09.2018
08:16:49
жсон может состоять из объектов - через {}, массивов - через [], и примитивных значений - чисел, строк, null, boolean, может ещё чо забыл

и сочетаний всего этого выше

т.е. может быть массив из объектов и примитивных значений вперемешку [ { ... }, 1, "123" ]

а может быть просто примитивное значение без объектов и массивов "123" - нормальный json, но просто из примитивного значения

Vasily
17.09.2018
08:17:54
Хммм... спека по json состоит в основном из пустых страниц :)

Ayrat
17.09.2018
08:17:56
объект ему не нужен

Google
Vasily
17.09.2018
08:19:13
Но в целом да, должен жрать

Ayrat
17.09.2018
08:19:21
в объекте насколько я знаю обязательно именно ключ-значение, где значение может быть json { "key1": 1 - примитивное значение по ключу "key2": [...] - массив жсонов, см выше "key3": {...} - по ключу лежит другой объект }

Но в целом да, должен жрать
может и не жрать, но тогда это проблема несоответствия

Vasily
17.09.2018
08:19:52
Хоть свой парсер пиши

Я так понимаю, проблема десериализации в том, что предполагается JObject

И, кстати, в спеке json нет спецификации даты

Ayrat
17.09.2018
08:22:58
Ты мне прям эмоции возобновил

Vasily
17.09.2018
08:23:15
Поэтому тому, кто ее накрутил

Надо что-то накрутить

Ayrat
17.09.2018
08:23:24
Да, он конченый

Vasily
17.09.2018
08:23:52
Интересно, долго ли парсер json на hopac писать

С поддержкой jpath на альтах

Ayrat
17.09.2018
08:24:44
Любопытно. Альты не обладают транзакционным комитом кстати

Я всё порывался сделать, но каждый раз находил костыль чтобы не писать

Vasily
17.09.2018
08:25:52
В теории должна быстрая библиотека получиться

Ayrat
17.09.2018
08:26:00
Есть пример - Логари

Vasily
17.09.2018
08:26:01
Т.к. параллелится хорошо

Roman
17.09.2018
08:26:09
Я всё порывался сделать, но каждый раз находил костыль чтобы не писать
Жаль не флуд, я бы тебе стикер запульнул с ленивцем

Vasily
17.09.2018
08:26:19
Пуляй во флуд

Google
Ayrat
17.09.2018
08:26:22
она быстрая, локальная и надёжная

Bonart
17.09.2018
08:26:34
И, кстати, в спеке json нет спецификации даты
Там еще ограничений на размер чисел нет

Vasily
17.09.2018
08:26:59
Там еще ограничений на размер чисел нет
Это если они с экспонентой записаны

Roman
17.09.2018
11:56:28
Привет! Как дела?

Андрей
17.09.2018
12:11:52
Пора вводить CAPTCHA?

Roman
17.09.2018
12:23:37
Что-то не могу разобраться с импортами в F#. Почему порядок файлов имеет значение ?

Vasily
17.09.2018
12:24:01
ПОтому что компилятор так работает

Vasily
17.09.2018
12:24:29
Последовательно считывает файлы и компилирует код

Лично мое субъективное мнение, что это очень хорошо

Alexey
17.09.2018
12:30:00
импорты работают как заголовочные файлы в сях?

текстовая подстановка

Ayrat
17.09.2018
12:46:53
Да, это фича. И мне она тоже нравится

Я пытался думать out-of-the-box, может у меня Стокгольмский синдром

типа может мы просто заложники "фичи"

Не нашёл подтверждения. Я всё равно стараюсь структурировать код слоями в любом случае. Просто F# запрещает НЕ структурировать

Арсений
17.09.2018
13:05:02
@vshapenko ты в этом чате исполняешь роль Олега?

Vasily
17.09.2018
13:05:57
А, ты из понва. Нет, не исполняю

Google
Roman
17.09.2018
14:11:12
Привет!

Vladimir
17.09.2018
14:46:50
А можно как-нибудь через SRTP написать функцию, которая вызывает перегруженный метод?



Roman
17.09.2018
14:50:12
А можно как-нибудь через SRTP написать функцию, которая вызывает перегруженный метод?
а зачем тут инлайн? ты можешь явно описать же let f bytes = method( bytes= bytes)

Vladimir
17.09.2018
14:51:08
я же так и сделал) и ругается

хочет чтобы я тип указал, а я не хочу, хочу через SRTP и inline

Roman
17.09.2018
14:52:05
я же так и сделал) и ругается
а как ты планируешь его использовать?

Friedrich
17.09.2018
14:52:16
А, или ты хочешь чтобы она находила любую из перегрузок?

Страница 717 из 772