Class NetworkHelper
- Namespace
- nanoFramework.Networking
- Assembly
- System.Net.dll
Network helper class providing helper methods to assist on connecting to a network.
public static class NetworkHelper
- Inheritance
-
NetworkHelper
- Inherited Members
Properties
HelperException
Exception that occurred when waiting for the network to become ready.
public static Exception HelperException { get; }
Property Value
NetworkReady
Event signaling that networking it's ready.
public static ManualResetEvent NetworkReady { get; }
Property Value
Remarks
The conditions for this are setup in the call to SetupNetworkHelper(bool). It will be a composition of network connected, IpAddress available and valid system DateTime.
When using SetupNetworkHelper(bool), this event is reset when the connection is lost and re-signaled when it is restored, accurately reflecting live network state.
Status
Status of NetworkHelper.
public static NetworkHelperStatus Status { get; }
Property Value
Methods
Reset()
Resets the NetworkHelper to its initial state, allowing SetupNetworkHelper(bool) to be called again or the network configuration to be changed.
public static void Reset()
Remarks
Call this before switching network configuration or restarting the event-based helper. This method does not disconnect the network interface or alter IP settings.
SetupAndConnectNetwork(CancellationToken, bool)
This will wait for the network connection to be up and optionally for a valid date and time to become available. This method is retryable and can be called multiple times after a previous call times out or fails.
public static bool SetupAndConnectNetwork(CancellationToken token = default, bool requiresDateTime = false)
Parameters
tokenCancellationTokenA CancellationToken used for timing out the operation.
requiresDateTimeboolSet to true if valid date and time are required.
Returns
- bool
true on success. On failure returns false and details with the cause of the failure are made available in the Status property
SetupAndConnectNetwork(IPConfiguration, CancellationToken, bool)
This will wait for the network connection to be up and optionally for a valid date and time to become available. This method is retryable and can be called multiple times after a previous call times out or fails.
public static bool SetupAndConnectNetwork(IPConfiguration ipConfiguration, CancellationToken token = default, bool requiresDateTime = false)
Parameters
ipConfigurationIPConfigurationThe static IPv4 configuration to apply to the Ethernet network interface.
tokenCancellationTokenA CancellationToken used for timing out the operation.
requiresDateTimeboolSet to true if valid date and time are required.
Returns
- bool
true on success. On failure returns false and details with the cause of the failure are made available in the Status property
SetupNetworkHelper(bool)
This method will setup the network configurations so that the NetworkReady event will fire when the required conditions are met. That will be the network connection to be up, having a valid IpAddress and optionally for a valid date and time to become available.
public static void SetupNetworkHelper(bool requiresDateTime = false)
Parameters
Exceptions
- InvalidOperationException
If called more than once without an intervening call to Reset().
- NotSupportedException
There is no network interface configured. Open the 'Edit Network Configuration' in Device Explorer and configure one.
SetupNetworkHelper(IPConfiguration, bool)
This method will setup the network configurations so that the NetworkReady event will fire when the required conditions are met. That will be the network connection to be up, having a valid IpAddress and optionally for a valid date and time to become available.
public static void SetupNetworkHelper(IPConfiguration ipConfiguration, bool requiresDateTime = false)
Parameters
ipConfigurationIPConfigurationThe static IP configuration you want to apply.
requiresDateTimeboolSet to true if valid date and time are required.
Exceptions
- InvalidOperationException
If called more than once without an intervening call to Reset().
- NotSupportedException
There is no network interface configured. Open the 'Edit Network Configuration' in Device Explorer and configure one.