If you move from a java Metadata Adapter to an equivalent remote Metadata Adapter, only "adapters.xml" has to be changed. No changes are needed on the client side.
The StockListDemo example in the distribution package makes use of both a remote Data Adapter and a remote Metadata Adapter. This kind of configuration is shown in
DOCS-SDKs\sdk_adapter_dotnet\examples\DotNetStockListDe mo\Deployment\Deployment_LS\StockList_sockets\adap ters.xml
The remote Metadata Adapter must be launched in the same way as the remote Data Adapter.

Any user validation or similar logic should be added by implementing suitable methods on the Metadata Adapter. You can inherit your own Metadata Adapter from the minimal LiteralBasedProvider and add the implementations needed.

In order to pass data from the Remote Metadata Adapter to the Remote Data Adapter, their two processes should communicate in some way. The simplest scenario is when you launch the two adapers in the same process. This is shown in
DOCS-SDKs\sdk_adapter_dotnet\examples\DotNetStockListDe mo\Deployment\Deployment_DotNet_Server(custom)
where a custom executable, whose source code is shown in
DOCS-SDKs\sdk_adapter_dotnet\examples\DotNetStockListDe mo\src_standalone_launcher
contains both the Remote Metadata Adapter object and the Remote Data Adapter object.