asp.net 获取服务器相关信息

简介:  #region 返回操作系统信息 .net版本 数据库大小  程序大小等方法        ///         /// 获取服务器系统信息        ///         public string GetOSVersion()        {            OperatingSystem os = Environment.
  #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/WanJiaFilm.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
目录
相关文章
|
2月前
|
开发框架 JavaScript 前端开发
震撼!破解 ASP.NET 服务器控件 Button 执行顺序之谜,颠覆你的开发认知!
【8月更文挑战第16天】在ASP.NET开发中,通过Button控件实现先执行JavaScript再触后台处理的需求十分常见。例如,在用户点击按钮前需前端验证或提示,确保操作无误后再传递数据至后台深度处理。此过程可通过设置Button的`OnClientClick`属性调用自定义JavaScript函数完成验证;若验证通过,则继续触发后台事件。此外,结合jQuery也能达到相同效果,利用`__doPostBack`手动触发服务器端事件。这种方式增强了应用的交互性和用户体验。
40 8
|
2月前
|
开发框架 JavaScript 前端开发
揭秘:如何让你的asp.net页面变身交互魔术师——先施展JavaScript咒语,再引发服务器端魔法!
【8月更文挑战第16天】在ASP.NET开发中,处理客户端与服务器交互时,常需先执行客户端验证再提交数据。传统上使用ASP.NET Button控件直接触发服务器事件,但难以插入客户端逻辑。本文对比此法与改进方案:利用HTML按钮及JavaScript手动控制表单提交。后者通过`onclick`事件调用JavaScript函数`SubmitForm()`来检查输入并决定是否提交,增强了灵活性和用户体验,同时确保了服务器端逻辑的执行。
40 5
|
1月前
|
开发框架 JavaScript 前端开发
|
2月前
|
API
【Azure Key Vault】.NET 代码如何访问中国区的Key Vault中的机密信息(Get/Set Secret)
【Azure Key Vault】.NET 代码如何访问中国区的Key Vault中的机密信息(Get/Set Secret)
|
2月前
|
存储 开发框架 .NET
ASP.NET Web Api 使用 EF 6,DateTime 字段如何取数据库服务器当前时间
ASP.NET Web Api 使用 EF 6,DateTime 字段如何取数据库服务器当前时间
|
29天前
|
开发框架 前端开发 JavaScript
ASP.NET MVC 教程
ASP.NET 是一个使用 HTML、CSS、JavaScript 和服务器脚本创建网页和网站的开发框架。
28 7
|
27天前
|
存储 开发框架 前端开发
ASP.NET MVC 迅速集成 SignalR
ASP.NET MVC 迅速集成 SignalR
38 0
|
2月前
|
开发框架 前端开发 .NET
ASP.NET MVC WebApi 接口返回 JOSN 日期格式化 date format
ASP.NET MVC WebApi 接口返回 JOSN 日期格式化 date format
36 0
|
2月前
|
开发框架 前端开发 安全
ASP.NET MVC 如何使用 Form Authentication?
ASP.NET MVC 如何使用 Form Authentication?
|
2月前
|
开发框架 .NET
Asp.Net Core 使用X.PagedList.Mvc.Core分页 & 搜索
Asp.Net Core 使用X.PagedList.Mvc.Core分页 & 搜索
93 0
下一篇
无影云桌面