【问题标题】:Is it possible to call matlab functions from Silverlight / C#?是否可以从 Silverlight / C# 调用 matlab 函数?
【发布时间】:2012-08-15 01:39:19
【问题描述】:

是否可以从 Silverlight / C# 调用 matlab 函数?

【问题讨论】:

  • 你想调用哪些函数?为什么不mathnetnumerics.codeplex.com
  • 我需要调用我自己在matlab和一些本机中实现的函数。但数学似乎是一个很好的工具。谢谢!

标签: silverlight matlab matlab-deployment function-calls


【解决方案1】:

如果您有一个可以解释 Mathlab 调用的程序集 (dll),您应该能够将该程序集包含在您的项目中,并与您的应用程序的其余部分一起编译它。

显然,您将无法并行运行 Silverlight 以与已安装的 Matlab 实例交互(除非 API 通过 COM 互操作公开并使用 Silverlight 4,但这可能会变得混乱)。

如 Matt 所提到的,sourceforge 上的 Web API 似乎非常适合如果您无法找到要直接包含在 Silverlight 应用程序中的程序集。阅读我的 cmets 以获得更多想法。

【讨论】:

    【解决方案2】:

    我认为这对于您打算在浏览器中运行的 Silverlight 来说是不可能的,尽管您当然可以将 WPF 用作 Windows 应用程序。

    但是,您可以使用 Matlab 服务器页面 (MSP) 将 Matlab 功能公开为 Web 服务,然后使用 silverlight 的功能。

    http://msp.sourceforge.net

    本教程特别有趣,它展示了如何从 C# 访问 MSP Web 服务。

    http://msp.sourceforge.net/Tutorial/tutor13.htm

    【讨论】:

    • 使用 Web 服务的想法似乎非常适合 Silverlight 应用程序。如果您尝试直接从 Silverlight 客户端访问服务,您可能会遇到一些跨域功能问题(尽管这可能在 Silverlight 4 中的浏览器外提升信任中允许)。至少,您可以在您的主机域上创建一个与单独域上的 matlab 服务交互的 Web 服务。这应该在任何版本的 SL 中都能正常工作。
    • 您应该可以解决任何跨域问题,只要您可以控制运行 Web 服务的服务器即可。你只需要把一个clientaccesspolicy.xml文件放在webservice域的根目录下。
    • 完全正确。起初我以为他会访问其他人的托管服务,但您引用的 sourceforge 项目看起来像是您应该在自己的域上托管的东西。
    【解决方案3】:

    您可以使用Matlab API for .NET

    【讨论】:

    • 似乎该 API 用于从 Matlab 中使用 .NET 对象,反之亦然。
    【解决方案4】:

    你会在这个页面上找到你的答案 http://tech-michael.blogspot.com/2010/01/silverlight-communicating-with-matlab.html

    我希望这会有所帮助。

    【讨论】:

      猜你喜欢
      • 2014-06-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-09-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多