首页 > 解决方案 > 跨平台方式确保某些操作曾经在本地机器上执行过

问题描述

我正在开发跨平台的 .net 标准 2.0 库(针对 Windows、iOS、Android)。

有一些操作我只需要在本地机器上执行一次。

If (!MethodAExecuted)
{
    MethodA();
    MethodAExecuted = true;
}

我能做些什么来以跨平台的方式实现这种行为?

标签: cross-platform.net-standard-2.0

解决方案


我唯一能想到的就是有一个 Web 服务端点,而不是:

MethodAExecuted = 真

您可以调用 Web 服务来设置状态,并调用另一个来确定是否曾经设置过状态。这将完全独立于平台,因为它将基于开放标准。每个平台上的实现只需要遵守 Web 服务的 WSDL 中的约定。

注意:你如何处理时间、并发等事情取决于你。但是由于对 Web 服务的调用是独立于平台的,因此您可以在每个平台的基础上对其进行调整。


推荐阅读