Я пытаюсь установить связь между двумя приложениями. 1 приложение matlab 1 написанное на С# приложение.
Приложение С# публикует свои функции с помощью приложения Microsoft WSDL, которое является нестандартным, и Matlab не может его понять.
Знаете ли вы о каких-либо решениях этой проблемы? Некоторое приложение, которое публикует функции WCF стандартным образом или какой-то автоматический инструмент, который исправляет это?
Спасибо,
Хорошо известная проблема - на самом деле, Microsoft output стандартно совместим, но большинство других систем не поддерживают его: -)
Проверьте эти расширения WCF, которые позволят вам "сгладить" ваш WSDL, чтобы включить XSD в качестве встроенных <wsdl:schema>
элементов:
Надеюсь, что это поможет!
Марк
IPC:. Вы можете сделать это с помощью межпроцессного взаимодействия. Например, вы можете использовать сокет или именованный канал.
DLL:. Если вы просто хотите использовать методы С# в Matlab, вы можете создать dll.NET framework и использовать его в matlab с помощью NET.addAssembly('path to your dll');
MQTT: Если связь между процессами сложна, вы также можете использовать MQTT для простого обмена сообщениями (например, JSON) между процессами.
Вы можете изменить приложение С# в качестве службы ретрансляции .net.
И затем вы можете использовать вызов cll dll для доступа к сервису с помощью протокола matlab-net-api.
В качестве режима вы можете использовать WCF в качестве службы и использовать связь cll dll dll mlabab-net-api для связи с этой службой.