【发布时间】:2021-08-10 21:36:15
【问题描述】:
我目前正在尝试将我的 ASP-NET Core 2 应用程序连接到 Magento 的 API (WSDL v2),但不断收到以下错误:
*不管我调用哪种方法,即使是 new PortTypeClient().loginAsync(username, password); 也会抛出它,使用这个随机端点名称 salesOrderShipmentAddComment。
InvalidOperationException:操作 无法加载“salesOrderShipmentAddComment”,因为它 在 \"literal\" 模式下指定 \"rpc-style\",但使用消息协定 类型或 System.ServiceModel.Channels.Message。这个组合是 不允许 - 为样式或使用参数指定不同的值 除了消息合同类型或 System.ServiceModel.Channels.Message。
但是,使用 SoapUI、邮递员或使用框架 4.6 导入,它可以完美运行。 使用 Magento v1 API 也可以,但我不想使用这个版本。
在 asp-net core 中导入期间,我也收到了这些警告(导入 v1 不会显示任何警告):
我几乎要创建一个新的 4.6 应用程序,单独托管它以充当我的应用程序和 Magento 之间的桥梁,即使它会损害我的性能和架构。
这就是我进行导入的方式:
*Obs:在Data Type Options,我也尝试检查不同的选项,并选择其他数据类型。
任何事情都会有帮助...
提前致谢
【问题讨论】:
-
在 Linux、sotnet、svcutil 和最新的 .NET Core 上也是如此。你找到解决办法了吗?
-
不是一个好的解决方案,@nielo... 我创建了一个 4.6 .Net 应用程序作为抽象层,从 WSDL 读取 XML,并返回 JSON。
-
所以你确认这在 2.1 中没有修复?
-
无法确认...我可以稍后再试,希望它有效。升级对您有用吗?
-
更新本身有效,但几个月前。 WCF 确实抛出了上述异常:/
标签: c# wcf magento asp.net-core