Запрос oData ( обновление, создание: POST запросы ) из c# (сторонней программы) #783219


#0 by lvi15
Добрый день! Стал искать примеры oData (REST) из c# (сторонных приложений), но "с ходу" ничего нет. Нашел что-то типа:         private const string DATA = @"{""object"":{""Description"":""Name""}}";         static void Main(string[] args)         {             } Но как его прикрутить к 1с - ??? Есть ли у кого точные ссылкы
#1 by Господин ПЖ
а зачем к 1с прикручивать код c#
#2 by lvi15
Прикрутить код c# для взаимодействия с 1с (в рамках решения более общей задачи интеграции систем). Через com- коннектор примеры есть (когда приложение получает "свой" экземпляр-интерфейс 1с), а чере oData не нашел, хотя решение должно быть ("простым и изящным")...???
#3 by Господин ПЖ
куда еще изящнее то? спросил сервис, получил ответ, прочитал
#4 by lvi15
Про "прочитал" я и не спрашиваю - вроде как читает. Это обычный GET - запрос. А обновления-создание - это POST запросы. И здесь крайне желателен пример (как оформить "заголовок", как "тело" и пр.). Об этом и речь...
#5 by Serginio1
#6 by Serginio1
5+ Все значительно проще используя Linq
#7 by Serginio1
Если, что то здесь Много ссылок по взаимодействию 1С с C#
#8 by lvi15
А можно уточнить, LINQ - это прямой доступ к БД 1с? Если так, то это "как-то подозрительно". Мне кажется, что надо использовать стандартные "интерфейсы" от разработчиков (тот же oData, com - но это уже вчеращний день, web-service - но там вроде как надо "цеплять" замки конфигурации..)
#9 by Serginio1
Нет это стандартный доступ для ODATA. Ты хоть статью то почитал? Дальше берешь в руки фиддлер и смотришь HTTP запросы. Если используешь .Net Core то там немного другой подход Кроме того в новыйх версиях 1С обещают использование Expand Да есть возможность в ODATA сразу подгружать нужные свойства var result = (from Тестовый in context.Catalog_Тестовый.Expand("РеквизитСправочник")                           where Тестовый.Ref_Key == new Guid("aada18ad-5308-11e5-8e05-c86000c70663") Но пока в 1С Параметр $expand не поддерживается"
#10 by Serginio1
В конце статьи полезные ссылки Полезные ссылки для запросов ODATA Обновление, добавление и удаление записей
#11 by trdm
> А можно уточнить, LINQ - это прямой доступ к БД 1с? Зачем на .опу приключений искать? Тебе общаться с 1С надо или обрабатывать данные в БД?
#12 by Serginio1
Еще один. Linq to ODATA это как раз обртка на HTTP запросами. Ты хоть статью почитай.
#13 by trdm
ИМХО шарп сильно избыточен для разработки БД. Что-бы его использовать в такой разработке нужны ОЧЕНЬ ВЕСКИЕ ДОВОДЫ. Проще на 1С накатать.
#14 by trdm
Да мне больше делать нечего..
#15 by Serginio1
Вот статья про интеграцию с 1С В 8.3.9 есть Expand Угу. На Шарпе намного удобнее работать с БД чем даже из 1С Но это уже другая песня, когда нужна скорость и удобство  например из Asp.Net Главное ветку поднять.
#16 by Господин ПЖ
>ИМХО шарп сильно избыточен для разработки БД. шарп - избыточен 1с - недостаточен за пределами справочник-документ-проводка такая вот трагедия
#17 by trdm
Верно. май крези смайл выход использовать С++ с патерном интертрепатор. Можно работать на любом уровне абструкции.
#18 by trdm
Давно хотел спросить по синтаксису шарпа. специфокаторы доступа привате/публик приколочены гвоздями к определениям мемберов и функций или можно определять зонально: публик: бла-бла-переменная; бла-бла-переменная2; .. бла-бла-переменнаяN;
#19 by Serginio1
Нет так в C++. В шарпе можно объявить в любом месте. По умолчанию если не указан (public и прочее), то считается private
#20 by Serginio1
Уже реализовано, через .Net
#21 by trdm
этих реализаций - просто море. дотнет в этом случае не уникален.
#22 by trdm
и нет разницы между класами и структурами? В с++ в структурах помнится публик по укричанию, а в классах - привате.
#23 by Serginio1
Покажи аналог на C++ Есть кстати на питоне. Все одинаково для классов и структур. На самом деле на С++ то нет большой разницы между классами и структурами Кстати в C# тоже хотят дать возможность создавать классы на стеке
#24 by trdm
Что именно надо показать? Какую технологию?
#25 by Serginio1
Я же написал. Аналог Использование сборок .NET в 1С 7.x b 8.x. Любые классы из 1С через COM, Так как в Native API не поддерживается возврат и передача объектов в параметрах.
#26 by trdm
pyQt к примеру. По его подобию можно подключить к 1С библиотеку Qt с её функционалом. Просто в здравом уме это никто не будет делать, т.к. получится большой оверхед по памяти.
#27 by trdm
+ в здравом уме конечно при необходимости пишется отдельная библиотека с определенным функционалом, а не тянутся все либы в отведенную процессу память.
#28 by Serginio1
Во во в здравом уме пишутся отдельные ВК на каждый случай итд. Ты то говорил про >> выход использовать С++ с патерном интертрепатор. Можно работать на любом уровне абструкции. У меня через COM и кроссплатформенный .Net Core через Native API это реализовано, в отличие от. При этом я могу использовать и динамическую компиляцию
#29 by Serginio1
Можно и на Java. Только никто не делает.
#30 by trdm
Да флаг тебе в руки. Когда проснешся и обнаружишь, что закон Мура не работает, может чего дойдет. На белазе за семками гонять - это надо быть альтернативным до ужаса.
#31 by Serginio1
А где ты белаз то увидел, В отличие от С++, в .Net Джитится только необходимое. А вот твои библиотеки как раз будут тянуть и не нужные классы и код к ним. А вот использовать .Net можно те только для Sleep. Сначала используешь одно, затем другое и в итоге задействуешь кучу классов и сборок
#32 by trdm
да, с тобой ясно. Только одно непонятно, нафига тебе 1С? Этот овнонет регистрируется в реестре и при каждом пуке перечитываются мегабайты. Спасибо, проходили эту тормозуху. Впрочем для садомазо - самое то что надо. Оверхедный синтаксис, оверхедные объемы в процессе, оверхед по созданию классов, оверхед по привязке к производителю. Накуй надо.
#33 by Serginio1
А можно поподробне про >> регистрируется в реестре и при каждом пуке перечитываются мегабайты Особенно для .Net Core. Меня поражает твое отношение к оверхеду, при том, что код вызывается из интерпритатора 1С. А ты работаешь на Линукс? .Net Core тебе в руки
#34 by Serginio1
32 Я же забыл ты ненавистник MS но обожатель QT. Заметь, что я против QT, Java и прочего ничего не имею. А вот откуда у тебя такая ненависть.
#35 by trdm
> А можно поподробне про При одной из инсталляций видел что оно пишет в реестр. Регспаем пользовался. Что такое реестр объяснять не надо надеюсь.  Многомегабайтная спец БДшка. После этого шустрота компа пропала. Пока это овно не вычистил комп работал с неторопливостью  катка асфальтоукладчика. Есть вариант, что эту тормозуху починили, наверняка даже. Но впечатление осталось.
#36 by trdm
Позицию я свою озвучивал.
#37 by trdm
+ майкрософт - один из участников экономической атаки на Россию. Я подлянок не прощаю. И отношусь с презрением к тем, кто служит подобным уродам.
#38 by Serginio1
Ну, дык ты работаешь на Windows и себя презираешь? Сочувствую. Ну в коде не только из .Net можно писать или читать из реестра. Наверное это было очень давно. А вот .Net Core этого не делает однозначно, хотя конечно можно через интероп, но это не кроссплатформенно.
#39 by trdm
Я форточки не распространяю и не рекламирую. Данность есть данность. А вот ты прививаешь эту заразу.
#40 by Serginio1
Так, а кто тебе мешает приводить свои реализации на QT. Я делюсь своим опытом. Кто то использует, большинство нет. Сделай так, что бы все на Линукс перешли. Я например рекламирую .Net Core и показываю примеры его использования. Чем больше выбор тем лучше. Или ты за безальтернативность?
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям