48 lines
1.4 KiB
C#
48 lines
1.4 KiB
C#
using System;
|
|
|
|
namespace Umbraco.Core
|
|
{
|
|
/// <summary>
|
|
/// Currently just used to get the machine name in med trust and to format a machine name for use with file names
|
|
/// </summary>
|
|
public class NetworkHelper
|
|
{
|
|
/// <summary>
|
|
/// Returns the machine name that is safe to use in file paths.
|
|
/// </summary>
|
|
public static string FileSafeMachineName
|
|
{
|
|
get { return MachineName.ReplaceNonAlphanumericChars('-'); }
|
|
}
|
|
|
|
/// <summary>
|
|
/// Returns the current machine name
|
|
/// </summary>
|
|
/// <remarks>
|
|
/// Tries to resolve the machine name, if it cannot it uses the config section.
|
|
/// </remarks>
|
|
public static string MachineName
|
|
{
|
|
get
|
|
{
|
|
try
|
|
{
|
|
return Environment.MachineName;
|
|
}
|
|
catch
|
|
{
|
|
try
|
|
{
|
|
return System.Net.Dns.GetHostName();
|
|
}
|
|
catch
|
|
{
|
|
//if we get here it means we cannot access the machine name
|
|
throw new ApplicationException("Cannot resolve the current machine name either by Environment.MachineName or by Dns.GetHostname()");
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|