NetworkConnection
Introduction
Do not forget to add this line of code in your "using" region:
C#
using LeoCorpLibrary;
VB
Imports LeoCorpLibrary
Functions
There are various methods available in NetworkConnection
to help achieve what you wanna do.
They are in:
LeoCorpLibrary.NetworkConnection.IsAvailable()
a. IsAvailable
This method is available in version 1.1 and higher.
Compatibility
Frameworks | LeoCorpLibrary | LeoCorpLibrary.Core |
---|---|---|
.NET 6 | ✔ | ✔ |
.NET 5 | ✔ | ✔ |
.NET Core 3.1 | ✔ | ✔ |
.NET Framework 4.5 | ✔ | ✔ |
This method tries to connect to https://bing.com by default. If it receives a positive status code (like 200), it will return true
.
You can specify a custom website if you want to:
Value | Argument | Description |
---|---|---|
string | url | The URL of the website where the connection is going to be tested |
Note
Specifying a custom website is available starting with version 4.1+.
Here's an example of usage:
C#
if (NetworkConnection.IsAvailable())
{
Console.WriteLine("Connected");
}
else
{
Console.WriteLine("Not connected");
}
// Or
bool isAvailable = NetworkConnection.IsAvailable("https://leocorporation.dev");
VB
If (NetworkConnection.IsAvailable()) Then
Console.WriteLine("Connected")
Else
Console.WriteLine("Not connected")
End If
' Or
// Or
Dim isAvailable As Boolean = NetworkConnection.IsAvailable("https://leocorporation.dev")
b. IsAvailableTestSite
This method is available in version 1.1 and higher.
Obsolete
This method is obsolete, please use IsAvailable()
instead.
Compatibility
Frameworks | LeoCorpLibrary | LeoCorpLibrary.Core |
---|---|---|
.NET 6 | ✔ | ✔ |
.NET 5 | ✔ | ✔ |
.NET Core 3.1 | ✔ | ✔ |
.NET Framework 4.5 | ✔ | ✔ |
This method is going to try to connect to a specific page that you specified. If it manages to connect to that page, it means there is an Internet connection.
You must specify a website like this:
Example:
IsAvailableTestSite("https://example.com")
Here's an example of usage:
C#
if (NetworkConnection.IsAvailableTestSite("https://example.com")) { // If true
Console.WriteLine("Connected");
}else{
Console.WriteLine("Not connected");
}
VB
If (NetworkConnection.IsAvailableTestSite("https://example.com")) Then ' If true
Console.WriteLine("Connected")
Else
Console.WriteLine("Not connected")
End If
c. IsAvailableAsync
This method is available in version 2.1 and higher.
Compatibility
Frameworks | LeoCorpLibrary | LeoCorpLibrary.Core |
---|---|---|
.NET 6 | ✔ | ✔ |
.NET 5 | ✔ | ✔ |
.NET Core 3.1 | ✔ | ✔ |
.NET Framework 4.5 | ✔ | ✔ |
This method tries to connect to https://bing.com by default. If it receives a positive status code (like 200), it will return true
.
You can specify a custom website if you want to:
Value | Argument | Description |
---|---|---|
string | url | The URL of the website where the connection is going to be tested |
Note
Specifying a custom website is available starting with version 4.1+.
It's in:
LeoCorpLibrary.NetworkConnection.IsAvailableAsync()
Here's an example of usage:
C#
async void TestConnection()
{
bool connectionAvailable = await NetworkConnection.IsAvailableAsync();
// Or
bool connectionAvailable2 = await NetworkConnection.IsAvailableAsync("https://leocorporation.dev");
}
VB
Private Async Sub TestConnection()
Dim connectionAvailable As Boolean = Await NetworkConnection.IsAvailableAsync()
' Or
Dim connectionAvailable2 As Boolean = Await NetworkConnection.IsAvailableAsync("https://leocorporation.dev")
End Sub
d. IsAvailableTestSiteAsync
This method is available in version 2.1 and higher.
Obsolete
This method is obsolete, please use IsAvailableAsync()
instead.
Compatibility
Frameworks | LeoCorpLibrary | LeoCorpLibrary.Core |
---|---|---|
.NET 6 | ✔ | ✔ |
.NET 5 | ✔ | ✔ |
.NET Core 3.1 | ✔ | ✔ |
.NET Framework 4.5 | ✔ | ✔ |
This method verifies if an Internet connection is available by sending a request on a specified website. Returns a bool
value.
It's in:
LeoCorpLibrary.NetworkConnection.IsAvailableTestSiteAsync()
It has one argument:
Value | Argument | Description |
---|---|---|
string | site | URL of the website where the connection is tested |
Here's an example of usage:
C#
async void TestConnection()
{
bool connectionAvailable = await NetworkConnection.IsAvailableTestSiteAsync("https://leocorporation.dev");
}
VB
Private Async Sub TestConnection()
Dim connectionAvailable As Boolean = Await NetworkConnection.IsAvailableTestSiteAsync("https://leocorporation.dev")
End Sub
e. GetWebPageStatusCode
This method is available in version 4.1 and higher.
Compatibility
Frameworks | LeoCorpLibrary | LeoCorpLibrary.Core |
---|---|---|
.NET 6 | ✔ | ✔ |
.NET 5 | ✔ | ✔ |
.NET Core 3.1 | ✔ | ✔ |
.NET Framework 4.5 | ✔ | ✔ |
Obsolete
This method is obsolete, please use GetWebPageStatusCodeAsync()
instead.
The GetWebPageStatusCode()
method allows you to get the status code of a specified website. It returns an int
value.
Learn more about status codes.
It's in:
LeoCorpLibrary.NetworkConnection.GetWebPageStatusCode()
It has one argument:
Value | Argument | Description |
---|---|---|
string | url | The URL of the website |
Here's an example of usage:
C#
if (NetworkConnection.GetWebPageStatusCode("https://leocorporation.dev") == 200)
{
Console.WriteLine("The website responded: OK");
}
VB
If NetworkConnection.GetWebPageStatusCode("https://leocorporation.dev") = 200 Then
Console.WriteLine("The website responded: OK")
End if
f. GetWebPageStatusCodeAsync
This method is available in version 4.5 and higher.
Compatibility
Frameworks | LeoCorpLibrary | LeoCorpLibrary.Core |
---|---|---|
.NET 6 | ✔ | ✔ |
.NET 5 | ✔ | ✔ |
.NET Core 3.1 | ✔ | ✔ |
.NET Framework 4.5 | ✔ | ✔ |
The GetWebPageStatusCodeAsync()
method allows you to get the status code of a specified website asynchronously. It returns an int
value.
Learn more about status codes.
It's in:
LeoCorpLibrary.NetworkConnection.GetWebPageStatusCodeAsync()
It has one argument:
Value | Argument | Description |
---|---|---|
string | url | The URL of the website |
Here's an example of usage:
C#
internal async Task Main()
{
if (await NetworkConnection.GetWebPageStatusCodeAsync("https://leocorporation.dev") == 200)
{
Console.WriteLine("The website responded: OK");
}
}
VB
Friend Async Function Main()
If Await NetworkConnection.GetWebPageStatusCodeAsync("https://leocorporation.dev") = 200 Then
Console.WriteLine("The website responded: OK")
End If
End Function
g. GetWebPageStatusDescription
This method is available in version 4.1 and higher.
Compatibility
Frameworks | LeoCorpLibrary | LeoCorpLibrary.Core |
---|---|---|
.NET 6 | ✔ | ✔ |
.NET 5 | ✔ | ✔ |
.NET Core 3.1 | ✔ | ✔ |
.NET Framework 4.5 | ✔ | ✔ |
Obsolete
This method is obsolete, please use GetWebPageStatusDescriptionAsync()
instead.
The GetWebPageStatusDescription()
method allows you to get the status description of a specified website. For instance, if the status code of the website is 418
, the status description associated with this status code will be "I'm a teapot"
. It returns a string
value.
Learn more about status codes.
It's in:
LeoCorpLibrary.NetworkConnection.GetWebPageStatusDescription()
It has one argument:
Value | Argument | Description |
---|---|---|
string | url | The URL of the website |
Here's an example of usage:
C#
int status = NetworkConnection.GetWebPageStatusCode("https://leocorporation.dev");
string description = NetworkConnection.GetWebPageStatusDescription("https://leocorporation.dev");
Console.WriteLine(status.ToString() + " - " + description);
// Expected output:
// 200 - OK
VB
Dim status As Integer = NetworkConnection.GetWebPageStatusCode("https://leocorporation.dev")
Dim description As String = NetworkConnection.GetWebPageStatusDescription("https://leocorporation.dev")
Console.WriteLine(status.ToString() & " - " & description)
' Expected output:
' 200 - OK
h. GetWebPageStatusDescriptionAsync
This method is available in version 4.5 and higher.
Compatibility
Frameworks | LeoCorpLibrary | LeoCorpLibrary.Core |
---|---|---|
.NET 6 | ✔ | ✔ |
.NET 5 | ✔ | ✔ |
.NET Core 3.1 | ✔ | ✔ |
.NET Framework 4.5 | ✔ | ✔ |
The GetWebPageStatusDescriptionAsync()
method allows you to get the status description of a specified website asynchronously. For instance, if the status code of the website is 418
, the status description associated with this status code will be "I'm a teapot"
. It returns a string
value.
Learn more about status codes.
It's in:
LeoCorpLibrary.NetworkConnection.GetWebPageStatusDescriptionAsync()
It has one argument:
Value | Argument | Description |
---|---|---|
string | url | The URL of the website |
Here's an example of usage:
C#
internal async Task Main()
{
int status = await NetworkConnection.GetWebPageStatusCodeAsync("https://leocorporation.dev");
string description = await NetworkConnection.GetWebPageStatusDescriptionAsync("https://leocorporation.dev");
Console.WriteLine(status.ToString() + " - " + description);
// Expected output:
// 200 - OK
}
VB
Friend Async Function Main()
Dim status As Integer = Await NetworkConnection.GetWebPageStatusCodeAsync("https://leocorporation.dev")
Dim description As String = Await NetworkConnection.GetWebPageStatusDescriptionAsync("https://leocorporation.dev")
Console.WriteLine(status.ToString() & " - " & description)
' Expected output:
' 200 - OK
End Function
i. GetStatusCodeType
This method is available in version 4.1 and higher.
Compatibility
Frameworks | LeoCorpLibrary | LeoCorpLibrary.Core |
---|---|---|
.NET 6 | ✔ | ✔ |
.NET 5 | ✔ | ✔ |
.NET Core 3.1 | ✔ | ✔ |
.NET Framework 4.5 | ✔ | ✔ |
The GetStatusCodeType()
method allows you to get the "type" of a status code. For instance, if the status code is between 100 and 199, the method will return StatusCodeType.Informational
. It returns a StatusCodeType
enum value.
Learn more about status codes.
It's in:
LeoCorpLibrary.NetworkConnection.GetStatusCodeType()
It has one argument:
Value | Argument | Description |
---|---|---|
string | url | The URL of the website |
Here's an example of usage:
C#
if (NetworkConnection.GetStatusCodeType("https://leocorporation.dev") == StatusCodeType.Success)
{
Console.WriteLine("The request was successful!")
}
else if (NetworkConnection.GetStatusCodeType("https://leocorporation.dev" == StatusCodeType.ClientError))
{
Console.WriteLine("The request was not successful!")
}
VB
If NetworkConnection.GetStatusCodeType("https://leocorporation.dev") = StatusCodeType.Success Then
Console.WriteLine("The request was successful!")
ElseIf NetworkConnection.GetStatusCodeType("https://leocorporation.dev" = StatusCodeType.ClientError) Then
Console.WriteLine("The request was not successful!")
End If
j. DownloadFileAsync
This method is available in version 4.4 and higher.
Compatibility
Frameworks | LeoCorpLibrary | LeoCorpLibrary.Core |
---|---|---|
.NET 6 | ✔ | ✔ |
.NET 5 | ✔ | ✔ |
.NET Core 3.1 | ✔ | ✔ |
.NET Framework 4.5 | ✔ | ✔ |
The DownloadFileAsync()
method allows you to download any files from the Internet using the HttpClient
class instead of the WebClient
class. It doesn't return any value (Task
).
It's in:
LeoCorpLibrary.NetworkConnection.DownloadFileAsync()
It has one argument:
Value | Argument | Description |
---|---|---|
Uri | uri | The URI of the file to download |
string | filePath | The path where to store the file once downloaded |
Here's an example of usage:
C#
async Task Main()
{
await NetworkConnection.DownloadFileAsync(new Uri("https://example.com/file.pdf"), @"C:\myFile.pdf");
}
VB
Private Async Function Main()
Await NetworkConnection.DownloadFileAsync(New Uri("https://example.com/file.pdf"), "C:\myFile.pdf")
End Function