.NET獲取服務器信息,如服務器版本、IIS等


.NET獲取服務器信息,如服務器版本、IIS等

.NET獲取服務器信息,如服務器版本、IIS版本、數據庫大小、網站系統空間占用大小、網站部署路徑等等

.NET獲取系統環境信息

復制代碼

#region 返回操作系統信息 .net版本 數據庫大小  程序大小等方法
/// <summary>
/// 獲取服務器系統信息
/// </summary>
public string GetOSVersion()
    {
        OperatingSystem os = Environment.OSVersion;
return os.ToString();
    }
/// <summary>
/// 獲取服務器.net版本
/// </summary>
/// <returns></returns>
public string GetNetVersion()
    {
return Environment.Version.ToString();
    }
/// <summary>
/// 獲取數據庫大小
/// </summary>
/// <returns></returns>
public string GetDataBaseLength()
    {
string fileFullPath = HttpContext.Current.Server.MapPath("~/App_Data/XXX.mdf");
        FileInfo file = new FileInfo(fileFullPath);
return (Convert.ToDouble(file.Length) / 1024 / 1024).ToString("N") + "M";
    }
/// <summary>
/// 遞歸文件目錄,返回目錄下所有文件大小
/// </summary>
/// <param name="d">傳入的路徑</param>
/// <returns></returns>
public static long DirSize(DirectoryInfo d)
    {
long Size = 0;
// 所有文件大小.
        FileInfo[] fis = d.GetFiles();
foreach (FileInfo fi in fis)
        {
            Size += fi.Length;
        }
// 遍歷出當前目錄的所有文件夾.
        DirectoryInfo[] dis = d.GetDirectories();
foreach (DirectoryInfo di in dis)
        {
            Size += DirSize(di);   //這就用到遞歸了,調用父方法,注意,這里並不是直接返回值,而是調用父返回來的
        }
return (Size);
    }
/// <summary>
/// 調用DirSize方法
/// </summary>
/// <returns></returns>
public string GetDirSize()
    {
string fullPath = HttpContext.Current.Server.MapPath("~/");
        DirectoryInfo d = new DirectoryInfo(fullPath);
return (Convert.ToDouble(DirSize(d)) / 1024 / 1024).ToString("N") + "M";
    }
#endregion
#region 服務器相關屬性
/// <summary>
/// 服務器名稱
/// </summary>
public string MachineName
    {
get { return HttpContext.Current.Server.MachineName; }
    }
/// <summary>
/// 服務器操作系統
/// </summary>
public string ServiveSystem
    {
get { return GetOSVersion(); }
    }
/// <summary>
/// 服務器IP地址
/// </summary>
public string ServiceIP
    {
get { return HttpContext.Current.Request.ServerVariables["LOCAL_ADDR"]; }
    }
/// <summary>
/// 網站端口號
/// </summary>
public string ServicePort
    {
get { return HttpContext.Current.Request.ServerVariables["SERVER_PORT"]; }
    }
/// <summary>
/// 服務器IIS版本
/// </summary>
public string ServiceIIS
    {
get { return HttpContext.Current.Request.ServerVariables["SERVER_SOFTWARE"]; }
    }
/// <summary>
/// 服務器.NET解釋引擎版本
/// </summary>
public string ServiceNetVersion
    {
get { return GetNetVersion(); }
    }
/// <summary>
/// 服務器時間
/// </summary>
public string ServiceTime
    {
get { return DateTime.Now.ToString(); }
    }
/// <summary>
/// 網站絕對路徑
/// </summary>
public string ServicePath
    {
get { return HttpContext.Current.Request.ServerVariables["PATH_TRANSLATED"].ToString(); }
    }
/// <summary>
/// 數據庫大小
/// </summary>
public string DataBaseLength
    {
get { return GetDataBaseLength(); }
    }
/// <summary>
/// 獲取程序占用空間大小
/// </summary>
public string GetSystemLength
    {
get { return GetDirSize(); }
    }
#endregion

復制代碼

.net遍歷服務所有變量信息

復制代碼

<table colspan="8" cellpadding="5" border="0">
<tr>
<td align="CENTER" bgcolor="#800000" width="20%">
<font style="arial narrow" color="#ffffff" size="2">環境變量名</font>
</td>
<td align="CENTER" width="80%" bgcolor="#800000">
<font style="arial narrow" color="#ffffff" size="2">結果</font>
</td>
</tr>
<%
foreach (string val in Request.ServerVariables)
{
Response.Write("<tr>");
Response.Write("<td bgcolor='f7efde' align=CENTER> <font style='ARIAL NARROW' size='2'>");
Response.Write(val);
Response.Write("</font></td>");
Response.Write("<td bgcolor='f7efde' align=CENTER> <font style='ARIAL NARROW' size='2'>");
Response.Write(Request.ServerVariables[val]);
Response.Write("</font></td></tr>");
}        %>
</table>

復制代碼

轉載請注明出處[http://samlin.cnblogs.com/

分享到:

當當計算書籍 5-8折

剛做的招標網:八爪魚招標網 請大家多意見

標簽: 服務器, 系統環境


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM