.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折

刚做的招标网:八爪鱼招标网 请大家多意见

标签: 服务器, 系统环境

.NET获取服务器信息,如服务器版本、IIS等的更多相关文章

  1. PHP获取当前服务器信息的基本语句

    下面是PHP获取当前服务器信息的基本语句. PHP程式版本: <?PHP echo PHP_VERSION; ?> ZEND版本: <?PHP echo zend_version() ...

  2. SQL Server 获取服务器信息

    最近做了一个小工具,里面涉及到一些取SQL Server 服务器信息的一些东西,找了好久,找到一个不错的,贴出来分享. 系统函数 SERVERPROPERTY ( propertyname ) 包含要 ...

  3. php获取服务器信息类

      <?php/**+------------------------------------------------------------------------------* 获取服务器信 ...

  4. Tsql 获取服务器信息

    Tsql 获取服务器属性,如服务器版本.服务器名 ref:http://technet.microsoft.com/zh-cn/library/ms174396.aspx select serverp ...

  5. php跨服务器信息获取之cURL

    原文地址:php跨服务器信息获取之cURL作者:陌上花开 其实有几种方式 $content = file_get_contents("http://www.nettuts.com" ...

  6. js获取设备公网ip + 服务器根据公网ip 获取IP信息

    1.前言 本来呢,想实现js定位功能,最少定位到城市,一开始,使用的是搜狐的api直接获取数据,可是,有时候搜狐不可靠,只能得到 公网ip,其他信息无用,就像这样 2.既然这样,还不如我自己请求自己的 ...

  7. Java运用第三方开源jar包sigar.jar获取服务器信息

    通过使用第三方开源jar包sigar.jar我们可以获得本地的信息 一.准备工作 (1)下载jar包和相关文件 资源链接:百度云:链接:https://pan.baidu.com/s/1nxccJHJ ...

  8. 使用Sigar获取服务器信息

    Sigar简介 Sigar是Hyperic-hq产品的基础包,是Hyperic HQ主要的数据收集组件.它用来从许多平台收集系统和处理信息. 这些平台包括:Linux, Windows, Solari ...

  9. python使用psutil获取服务器信息

    >>> import psutil 获取cpu信息>>> psutil.cpu_times()scputimes(user=128258.38, nice=12.2 ...

随机推荐

  1. 【BZOJ 1875】【SDOI 2009】HH去散步

    水啊水,最后ans别忘了%哦! #include<cstdio> #include<cstring> #include<algorithm> using names ...

  2. 区间DP HDU 4283

    t个数据 n个权值 1->n 可以入栈调整顺序 花费 第k个出来 w[i]*(k-1); 求花费最少 #include<stdio.h> #include<string.h&g ...

  3. Java发送邮件代码

    MailSenderInfo.java package com.nihaorz.mail.util; import java.util.Properties; public class MailSen ...

  4. java-a实现压缩与解压缩(zip、gzip)

    zip扮演着归档和压缩两个角色:gzip并不将文件归档,仅只是对单个文件进行压缩,所以,在UNIX平台上,命令tar通常用来创建一个档案文件,然后命令gzip来将档案文件压缩. Java I/O类库还 ...

  5. python面试2

    Python语言特性 1 Python的函数参数传递 看两个例子:     1 2 3 4 5 a = 1 def fun(a):     a = 2 fun(a) print a  # 1 1 2 ...

  6. 控件(文本类): TextBox, PasswordBox

    介绍背水一战 Windows 10 之 控件(文本类) TextBox PasswordBox 示例1.TextBox 的示例 1Controls/TextControl/TextBoxDemo1.x ...

  7. Java多线程学习(吐血超详细总结)

    本文主要讲了java中多线程的使用方法.线程同步.线程数据传递.线程状态及相应的一些线程函数用法.概述等. 首先讲一下进程和线程的区别: 进程:每个进程都有独立的代码和数据空间(进程上下文),进程间的 ...

  8. Cell右滑的动作状态

    //允许cell可以进行编辑 - (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)index ...

  9. 【bzoj1911】 Apio2010—特别行动队

    http://www.lydsy.com/JudgeOnline/problem.php?id=1911 (题目链接) 题意 给出一个序列,将序列分成连续的几段,每段的价值为a*s*s+b*s+c,其 ...

  10. EF-CodeFirst-1 玩起来

    注本文是学习旺杰兄的CodeFirst系列所写 CodeFirst CodeFirst是一种全新的玩法,代码先行使得我们更了解实体之间的关系.而且更加符合了DDD领域驱动设计的思想 .所以CodeFi ...