.NET 客户端编程
MATLAB® Production Server™ .NET 客户端 API 允许您使用本机 .NET 数据评估远程服务器上的 MATLAB 函数。.NET 客户端 API 为客户端-服务器通信提供了以下两种工作流。
一个工作流在评估部署在服务器上的 MATLAB 函数时隐藏了请求创建和数据序列化的实现细节。此工作流使用 MWHttpClient
类,并允许您在以下两种风格的 API 之间进行选择以评估 MATLAB 函数。
静态代理 - 您提供一个模拟 MATLAB 函数签名的接口。这是一种类型安全的 API,它强制在编译时将正确的数据类型传递给函数。
动态代理 - 将函数名称作为参数与函数参量一起传递给代理。这会将类型检查推迟到运行时。
另一个工作流使用 MATLAB Production Server 用于 MATLAB 函数执行的 RESTful API 进行 MATLAB 函数执行,以创建请求,并使用协议缓冲区 (protobuf) 进行数据序列化。协议缓冲区是一种与语言和平台无关的序列化结构化数据的方法。MATLAB Production Server .NET 客户端库提供了辅助类,用于内部创建 protobuf 消息并反序列化 protobuf 响应。
在本地 MATLAB Production Server 安装中,客户端 API 位于
,其中 $MPS_INSTALL
/client
是 MATLAB Production Server 的安装位置。客户端 API 也可从 MATLAB Production Server 客户端库下载。Java® 客户端 API 也托管在 https://mvnrepository.com/artifact/com.mathworks.prodserver/mps_java_client 的 Maven™ 存储库中。$MPS_INSTALL
主题
基础知识
- 准备您的 Microsoft Visual Studio 环境
设置 Microsoft® Visual Studio® 环境以使用 MATLAB Production Server .NET 客户端库。 - 创建 .NET MATLAB Production Server 客户端
了解如何创建 .NET MATLAB Production Server 客户端。
使用静态和动态代理进行编程
- 创建 C# 客户端
了解如何从 C# 应用程序调用部署到 MATLAB Production ServerMATLAB 函数。 - 动态调用 MATLAB 函数
无需创建代理即可调用服务器上的函数。 - 配置客户端-服务器连接
配置客户端的超时和响应大小限制。 - .NET 客户端编码最佳实践
编写调用 MATLAB 代码的 .NET 客户端代码的最佳实践。
使用 RESTful API 和协议缓冲区进行数据序列化编程
- 在 .NET 客户端中使用协议缓冲区进行异步 RESTful 请求
该示例展示了如何在 C# 客户端中使用协议缓冲区发出异步 RESTful 请求。 - 在 .NET 客户端中使用协议缓冲区同步 RESTful 请求
该示例展示了如何在 C# 客户端中使用协议缓冲区发出同步 RESTful 请求。 - 在 .NET 客户端中使用协议缓冲区对 RESTful 请求进行结构支持
该示例展示了在 C# 客户端中使用协议缓冲区支持结构作为 RESTful 请求的输入。
输入和输出
- 为 C# .NET 客户端编写多个输出代码
了解在集成具有多个输出的 MATLAB 函数时如何在 C# 函数中允许多个输出。 - 为 .NET 客户端编写可变长度的输入和输出代码
允许 .NET 客户端应用程序中有可变数量的输入和输出参量。
安全
- 使用 HTTPS 执行 MATLAB 函数
配置服务器和客户端环境以使用 SSL,然后使用已部署应用程序的 URL 创建程序代理。
数据类型和数据转换
- C# 中的 Marshal MATLAB 结构 (structs)
在 C# 应用程序中集成包含结构体的 MATLAB 代码。 - 客户端和服务器封送处理支持的 MATLAB 数据类型
MATLAB Production Server 支持客户端应用程序和服务器实例之间对几种 MATLAB 数据类型进行编组。 - 使用 C# 和 MATLAB 类型进行数据转换
MATLAB 和 C# 之间的数据类型等效性。 - MATLAB 类型与 C# 类型之间的转换
MATLAB 和 C# 之间的数据类型等效性。