.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. react.js 表单验证-登录框

    import React,{ Component } from 'react'; import style from 'cms.css'; ​ /** * 路由路径 登录成功后页面跳转到index * ...

  2. Oracle的自增长主键

    自增长主键 --首先建一个表TEST create table TEST(  NID int PRIMARY KEY,  test1 varchar2(20),  test2 varchar2(20) ...

  3. lucene-查询query->QueryParser

    对于搜索引擎(比如Google和百度)来讲,很多情况下只需要用户在输入框内输入所需查询的内容,然后再单击“搜索”就可以了,其余的事情全部交给搜索引擎去处理,最后搜索引擎会把检索到的结果显示出来.那么搜 ...

  4. lucene-查询query->PhrasePrefixQuery使用短语缀搜索

    PhrasePrefixQuery与Phrase有些类似.在PhraseQuery中,如果用户想查找短语“david robert”,又想查找短语“mary robert”.那么,他就只能构建两个Ph ...

  5. 控件(弹出类): ToolTip, Popup, PopupMenu

    示例1.ToolTip 的示例Controls/FlyoutControl/ToolTipDemo.xaml <Page x:Class="Windows10.Controls.Fly ...

  6. Node.js的net模块

    net模块提供了一个异步网络包装器,用于TCP网络编程,它包含了创建服务器和客户端的方法 创建TCP服务器 net.createServer方法 创建客户端去连接服务器 net.connect方法 简 ...

  7. java,js,jstl,EL的简单交互

    EL全名Expression Language.EL提供了在JSP脚本编制元素范围外使用运行时表达式的功能. 脚本编制元素是指页面中能够用于在JSP文件中嵌入java代码的元素. JSP标准标记库(j ...

  8. Linux 输出重定向>和>>的区别

    >是定向输出到文件,如果文件不存在,就创建文件:如果文件存在,就将其清空:一般我们备份清理日志文件的时候,就是这种方法:先备份日志,再用`>`,将日志文件清空(文件大小变成0字节): &g ...

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

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

  10. Genymotion关于【启动后player.exe已停止运行】解决方案总结

    1. 你硬盘空间不足,或是暂存区不够,请少执行一些程序或关掉一些p2p的程序,或是到控制面板卸载一些不必要的程序.最好的建议是定期进行硬盘清理,确保不浪费多余空间 ---以上来源(http://www ...