与 php 和 java 互操作的 C# dll
Posted
技术标签:
【中文标题】与 php 和 java 互操作的 C# dll【英文标题】:C# dll which is inter-operable with php and java 【发布时间】:2011-01-25 09:27:33 【问题描述】:我需要用 C sharp 创建一个 dll,它可以与 php 和 Tomcat/Java webservices 互操作。
普通的 C# 类库会帮我解决这个问题吗?
谢谢, 约翰
【问题讨论】:
到底有什么意义? 您是生产还是消费网络服务? 【参考方案1】:普通的 C# 类库会帮我解决这个问题吗?
您可以使用可被 PHP 和 Java 使用的可互操作的 basicHttpBinding 将类库公开为 WCF service。
【讨论】:
【参考方案2】:我将其解释为“我需要使用 Web 服务”,在这种情况下,请使用 wsdl.exe,或使用“添加 Web 引用...”/“添加服务引用...”选项在 Visual Studio 中。任何一种方法都会导致创建代表目标服务的 WSDL 的适当代理类。
这是数据/协议的互操作性;请注意,dll 本身 不能直接从 java / php 中使用。
【讨论】:
【参考方案3】:您的问题有点不清楚“可操作性”的方式。我假设您正在谈论制作一个将调用这些 Web 服务的 C# 类库,而这恰好是在 PHP/TomCat/Java 中实现的。
是的,.Net 框架对调用 http 端点有很好的支持。此外,如果这些端点碰巧返回 XML 数据,那么也有很好的支持。如果服务是 RESTful 的,你甚至可以支持它。
更新:因为我最初的假设是错误的,互操作性必须从 PHP/Java 到 .Net,我建议看看这些语言如何与 COM 互操作。 .Net 类可以公开为 COM 类,PHP 和 Java 可以进一步使用这些类。
【讨论】:
感谢Peter您的回复。我需要在Web服务中调用从dll导出的函数。【参考方案4】:也许我错了,但你可以在 php 中使用 C# 程序集和 DOTNET 类:
http://php.net/manual/en/class.dotnet.php
【讨论】:
以上是关于与 php 和 java 互操作的 C# dll的主要内容,如果未能解决你的问题,请参考以下文章
字符串数组 C# 与 C++ dll 的互操作性;从 C# 到 C++ dll 的字符串数组,它设置数据并将其发送回 c#