.NET获取服务器信息,如服务器版本、IIS等

时间:2022-09-26 18:20:28

.NET获取服务器信息,如服务器版本、IIS等

.NET获取服务器信息,如服务器版本、IIS版本、数据库大小、网站系统空间占用大小、网站部署路径等等

.NET获取系统环境信息

.NET获取服务器信息,如服务器版本、IIS等

#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获取服务器信息,如服务器版本、IIS等

.net遍历服务所有变量信息

.NET获取服务器信息,如服务器版本、IIS等

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

.NET获取服务器信息,如服务器版本、IIS等

转载请注明出处[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 &plus; 服务器根据公网ip 获取IP信息

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

  7. Java运用第三方开源jar包sigar&period;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. 20135326、20135303-linux实验一实验报告

    北京电子科技学院(BESTI) 实     验    报     告 课程:信息安全系统设计基础  班级:1353 姓名:王亦可 .魏昊卿 学号:20135326.20135303 成绩:       ...

  2. 如何开发 Sublime Text 2 的插件

    Sublime Text 2是一个高度可定制的文本编辑器,一直以来对希望有一个快速强大现代的编辑工具的的程序员保持着持续的吸引力.现在,我们将创建自己的一个Sublime plugin,实现用Nett ...

  3. JAVA--线程wait&lpar;&rpar;、lnotify&lpar;&rpar;和notifyAll&lpar;&rpar;方法

    join()方法是Thread类的一个方法,而wait().notify().notifyAll()是java.lang.Object类的方法,这意味着,任何一个Java对象(包括线程对象)都有wai ...

  4. Java 用Freemarker完美导出word文档(带图片)

    Java  用Freemarker完美导出word文档(带图片) 前言 最近在项目中,因客户要求,将页面内容(如合同协议)导出成word,在网上翻了好多,感觉太乱了,不过最后还是较好解决了这个问题. ...

  5. Windows 常用的运行命令

    1. 打开程序 1)   calc                    计算器 2)   notepad                 记事本 3)   write                 ...

  6. 防止vue文件中的样式出现&OpenCurlyQuote;污染’情况&lpar;html5 scoped特性&rpar;

    近期在项目中出现了vue样式污染的情况: 一个页面刚进去时样式不正常,刷新之后,样式才才达到预期那样 在vue中,如果把样式写在vue文件的 style中,可能会出现样式污染的情况,这是要把写样式的标 ...

  7. Leonardo&&num;39&semi;s Notebook UVALive - 3641(置换)

    题意: 给出26个大写字母的置换B,问是否存在一个置换A,使得A2 = B 解析: 两个长度为n的相同循环相乘,1.当n为奇数时结果也是一个长度为n的循环:2. 当n为偶数时分裂为两个长度为n/2 ( ...

  8. dubbo项目部署遇到的问题

    部署的项目结构如下: [图片] 1 Socket >>>相关的报错 检查下zookeeper的服务端cmd和客户端cmd是否起来了 2 jdbc.DataSourceProperti ...

  9. sublime 技巧与快捷键篇

    技巧大全:https://www.zhihu.com/question/24896283   项目排除文件夹,更便于ctrl + p的搜索,比如可恶的node_modules "folder ...

  10. C语言中的循环语句练习

    注:练习题目均出自<明解C语言 入门篇> 一.do语句 1,求多个整数的和及平均值 #include<stdio.h> int main(void) { ; //和 ; //整 ...