|
Помогите с svcutil.exe http://efactura-api.sfs.md/Service.svc?wsdl | ☑ | ||
---|---|---|---|---|
0
DES
02.07.20
✎
12:56
|
Установил визуалстудию2015
Как в ней сгенерить .dll - не могу найти. |
|||
1
Serginio1
02.07.20
✎
13:10
|
||||
2
Serginio1
02.07.20
✎
13:13
|
Правда сначала создай проект и проставь платформу 4.6.1 для VS 2019
Для других добавить ссылку на службу Right Click your project> select "Add (D)" > click "Service Reference (S)"> Input your WSDL url and click "Move (G)" if you have the URL or "Explore (D)" if you have the WSDL in your solution. It should then pop-up below, and remember to NAME your namingspace(N), they are important. And "OK". It should pop-up in your project. |
|||
3
DES
02.07.20
✎
13:14
|
Какой тип проекта создавать? Из шаблонов
|
|||
4
DES
02.07.20
✎
13:33
|
по идее должно было сработать svcutil.exe http://efactura-api.sfs.md/Service.svc?wsdl
а оно ругается что Метаданные содержат неразрешимую ссылку: "http://efactura-api.sfs.md/Service.svc?wsdl". Не удалось установить безопасный канал для SSL/TLS с полномочиями "efactura-api.sfs.md". Запрос был прерван: Не удалось создать защищенный канал SSL/TLS. |
|||
5
Serginio1
02.07.20
✎
13:57
|
Библиотека Windows
|
|||
6
Serginio1
02.07.20
✎
14:02
|
Видно SSL новый
NetObjectToIDispatch45 HTTP запросы Basic auth ServicePointManager=врап.ПолучитьТип("System.Net.ServicePointManager"); SecurityProtocolType=врап.ПолучитьТип("System.Net.SecurityProtocolType"); ServicePointManager.SecurityProtocol = Врап.OR(SecurityProtocolType.Ssl3 , SecurityProtocolType.Tls , SecurityProtocolType.Tls11 , SecurityProtocolType.Tls12); Если не поможет попробуй https://stackoverflow.com/questions/28286086/default-securityprotocol-in-net-4-5 |
|||
7
DES
02.07.20
✎
15:07
|
а нужно ли регистрировать сгенерированную dll ?
|
|||
8
Serginio1
02.07.20
✎
15:29
|
Нет. Главное NetObjectToIDispatch45 что была зарегистрирована. В твоей нечего регистрировать
|
|||
9
DES
02.07.20
✎
15:44
|
Нашел старый проект в нем заменил ссылку на новый адрес http://prntscr.com/tag7ch
перестроил проект , пересобрал, перекомпилировал 0 ошибок подставил dll вместо старой - перегрузил комп не работает. Ошибка при вызове метода контекста() |
|||
10
DES
02.07.20
✎
15:46
|
не знаю как использовать ServicePointManager
|
|||
11
Serginio1
02.07.20
✎
16:36
|
Перед вызовом сервиса после
врап=новый COMОбъект("NetObjectToIDispatch45"); ervicePointManager=врап.ПолучитьТип("System.Net.ServicePointManager"); SecurityProtocolType=врап.ПолучитьТип("System.Net.SecurityProtocolType"); ServicePointManager.SecurityProtocol = Врап.OR(SecurityProtocolType.Ssl3 , SecurityProtocolType.Tls , SecurityProtocolType.Tls11 , SecurityProtocolType.Tls12); Нужно для начала проверить из C# проекта. Посмотри NetObjectToIDispatch45 Подключение к веб сервису ТипТвоегоКлиента= врап.ПолучитьТипИзСборки("ТипТвоегоКлиента",ПутьКСборке); BasicHttpBinding = Врап.ПолучитьТипИзСборки("System.ServiceModel.BasicHttpBinding", "System.ServiceModel.dll"); Binding = Врап.СоздатьОбъект(BasicHttpBinding); Binding.MaxReceivedMessageSize = 1000000; Address = Врап.СоздатьОбъект("System.ServiceModel.EndpointAddress","http://efactura-api.sfs.md/Service.svc?wsdl");// Если изменился адрес пропиши его здесь client = Врап.СоздатьОбъект(ТипТвоегоКлиента,Binding,Address); |
|||
12
DES
02.07.20
✎
16:37
|
а генерация dll с помощью svcutil.exe и VS дает эквивалентную друг-другу прогу?
|
|||
13
DES
02.07.20
✎
16:47
|
а нужно полный адрес указывать?
Address = Врап.СоздатьОбъект("System.ServiceModel.EndpointAddress","http://efactura-api.sfs.md/Service.svc?wsdl"); раньше было так Address = Врап.СоздатьОбъект("System.ServiceModel.EndpointAddress","http://efactura-api.sfs.md");// Все полетело к чертям так как они изменили адрес сервера и наверно еще какие то параметры, спросить не у кого. |
|||
14
DES
02.07.20
✎
16:49
|
Под отладчиком все выполняется пока не происходит обращение к конкретной функции, а она (любая) дает в ответ Неопределено, вместо структуры.
|
|||
15
Serginio1
02.07.20
✎
17:27
|
Да. Прошу прощения. Без wsdl
Address = Врап.СоздатьОбъект("System.ServiceModel.EndpointAddress","http://efactura-api.sfs.md/Service.svc"); Короче нужный адрес. Ты в студии отладку делай. В config у тебя в биндингах реальный адрес должен быть прописан |
|||
16
DES
02.07.20
✎
18:33
|
Да как бы уже все отлажено в 1с8
Как отлаживать в студии, если я студию не знаю. |
|||
17
DES
02.07.20
✎
18:41
|
вот такое наковырял в Врап.ПоследняяОшибка.InnerException.Message
Указанная схема URI "http" недопустима. Ожидалась "https". Имя параметра: via |
|||
18
Serginio1
02.07.20
✎
19:00
|
||||
19
DES
02.07.20
✎
19:16
|
а на этот вопрос:
а генерация dll с помощью svcutil.exe и VS дает эквивалентную друг-другу прогу? |
|||
20
Serginio1
02.07.20
✎
19:42
|
(19) Должно одинаково
|
|||
21
DES
02.07.20
✎
21:19
|
А как результат Service.cs от svcutil.exe превратить в DLL ?
|
|||
22
Serginio1
02.07.20
✎
21:36
|
Создать проект Библиотека Windows добавить существующий элемент выбрать Service.cs
А чем 9 не подошел. Там в URL Web ссылки подставляешь http://efactura-api.sfs.md/Service.svc?wsdl и она заново все сформирует |
|||
23
Serginio1
02.07.20
✎
21:43
|
||||
24
Serginio1
02.07.20
✎
21:45
|
Только тебе нужно не .Net Core а .Net Framework 4.6.1
|
|||
25
DES
03.07.20
✎
07:08
|
а выше Фреймворк чем 4.6.1 не выбирать?
|
|||
26
DES
03.07.20
✎
08:04
|
(22) 9 - не работает.
делаю методом тыка. |
|||
27
DES
03.07.20
✎
08:15
|
а может старый проект не рабочий вариант нашёл, т.к. проверить нет возможности. Старый сервис уже отключили.
|
|||
28
DES
03.07.20
✎
08:51
|
создал проект
удалили Class1 добавил Существующий элемент компильнул error CS0234: Тип или имя пространства имен "ServiceModel" не существует в пространстве имен "System" (возможно, отсутствует ссылка на сборку). где добавить ссылку? |
|||
29
Serginio1
03.07.20
✎
09:35
|
(27) Еще раз старый проект тебе изменить URL Web ссылки подставляешь http://efactura-api.sfs.md/Service.svc?wsdl и она заново все сформирует
Смотри свою же картинку. Либо создать новый и добавить ссылку на службу. Попроси какого нибудь C# программиста. У меня времени нет |
|||
30
DES
03.07.20
✎
09:58
|
я сделал и 1 и 2 варианты, не работает
вот пытаюсь 3 компильнуть. Самый описанный на сайте услуги. Но компилятор ругается. Но вероятно тоже не будет работать. |
|||
31
Serginio1
03.07.20
✎
23:35
|
Кстати адрес у тебя в wsdl прописан
https://efactura-api.sfs.md/Service.svc |
|||
32
shiuck
08.07.20
✎
18:08
|
(0) DES, у вас получилось побороть ? Если да, поделитесь пожалуйста с опытом
|
|||
33
DES
11.07.20
✎
18:04
|
(32) Пока что отвечает
<div class='_2' >Sunt efectuate lucrări de mentenanţă. Reveniţi mai târziu.<br /> The service is in maintenance mode. Please, come back later.</div> <br/><br/><br/><br/> <a class='btn' href='javascript:history.go(-1)'>Î n a p o i</a> |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |