每30秒连接一次服务器,连接成功单元格变绿色,连接失败变红色,状态单元格为17行,2列

1,打开excel文件,进入vba编辑器,新建一个modules模块,在里面先写一个每30秒执行一次ConnServer宏

Sub StartTimer()
Application.OnTime Now + TimeValue("00:00:30"), "StartTimer"
ConnServer
End Sub

2,再编写一个访问服务器代码的宏

Client.BaseUrl = "http://localhost:56112"填的是本地项目

Request.Resource = "/test/CheckConnServer" 访问testController下的CheckConnServer方法

Sub ConnServer()
Dim Client As New WebClient, Request As New WebRequest, Response As WebResponse, ResponseString As String, Body As Object On Error GoTo MyErr
Client.BaseUrl = "http://localhost:56112"
Client.TimeoutMs = Request.Resource = "/chhk/CheckConnServer"
Request.Method = WebMethod.HttpPost
Set Body = New Dictionary
Body.Add "fileName", ThisWorkbook.Name Set Request.Body = Body Set Response = Client.Execute(Request)
ResponseString = Response.Content
' 判断访问状态
If ResponseString = "OK" Then
ThisWorkbook.Sheets("Sales Portal").Cells(, ).Interior.Color = RGB(, , )
Else
ThisWorkbook.Sheets("Sales Portal").Cells(, ).Interior.Color = RGB(, , )
End If Exit Sub
MyErr:
ThisWorkbook.Sheets("Sales Portal").Cells(, ).Interior.Color = RGB(, , )
' 访问代码报错时单元格变红色
End Sub

3,MVC控制器中的方法

        [HttpPost]
[AllowAnonymous]
public string CheckConnServer(string fileName)
{
return new TxtConnServer().TryConnServer(fileName);
}

4,MVC项目中添加访问时间,工作蒲名称的类

AppDomain.CurrentDomain.BaseDirectory获取基目录,没有存在则生成一个CheckConnServer.txt文件

public class TxtConnServer
{
public string TryConnServer(string requestConnBody)
{ try
{
//写入连接服务器信息
string file = AppDomain.CurrentDomain.BaseDirectory + "CheckConnServer.txt";
if (!File.Exists(file))
File.Create(file).Close(); FileStream fs = new FileStream(file, FileMode.Append);
StreamWriter sw = new StreamWriter(fs);
sw.WriteLine(" ");
sw.WriteLine(requestConnBody + "-----------" + DateTime.Now.ToChinaTime().ToString("dd-MM-yyyy HH-mm-ss"));//开始写入值 sw.Close();
fs.Close();
return "OK";
}
catch (Exception ex)
{
return "Write error";
} }
}

Excel vba中访问ASP.NET MVC项目,记录访问时间,文件名称的更多相关文章

  1. Angular2中对ASP.NET MVC跨域访问

    应用场景 项目开发决定使用angular2进行前后端分离开发,由我负责后端服务的开发,起初选择的是web api进行开发.对跨域访问通过API中间件+过滤器对跨域访问进行支持.开发一段后,通知需要移植 ...

  2. 在 ASP.NET MVC 项目中使用 WebForm、 HTML

    原文地址:http://www.cnblogs.com/snowdream/archive/2009/04/17/winforms-in-mvc.html ASP.NET MVC和WebForm各有各 ...

  3. 在已有的Asp.net MVC项目中引入Taurus.MVC

    Taurus.MVC是一个优秀的框架,如果要应用到已有的Asp.net MVC项目中,需要修改一下. 1.前提约定: 走Taurus.MVC必须指定后缀.如.api 2.原项目修改如下: web.co ...

  4. ASP.NET MVC项目中App_Code目录在程序应用

    学习ASP.NET MVC,如果你是开发ASP.NET MVC项目的,也许你去为项目添加前ASP.NET项目的APP_Code目录,在这里创建与添加的Class类,也许你无法在MVC项目所引用. 那这 ...

  5. asp.net mvc项目使用spring.net发布到IIS后,在访问提示错误 Could not load type from string value 'DALMsSql.DBSessionFactory,DALMsSql'.

    asp.net mvc项目使用spring.net发布到IIS后,在访问提示错误 Could not load type from string value 'DALMsSql.DBSessionFa ...

  6. VS2017中建立ASP.NET MVC 4.0项目

    新的项目需要运行在WIN2003上,又不想用ASPX了,只好用回ASP.NET MVC4.0了,可是在VS2017中已经没有MVC4的模板了,网上下载的安装了也没有,只好把以前的MVC4的项目拿 出来 ...

  7. 在ASP.NET MVC项目中使用极验验证(geetest)

    时间 2016-03-02 18:22:37 smallerpig 原文  http://www.smallerpig.com/979.html 主题 ASP.NET MVC   geetest开发体 ...

  8. 习题-任务2初始ASP.NET MVC项目开发

    一.选择题 1.在ASP.NET MVC项目的RouteConfig.cs文件中,(    )方法注册了默认的路由配置. A.RegisterMap    B.RegisterRoutes    C. ...

  9. 1.2 认识ASP.NET MVC项目结构

    1.开发环境 操作系统:xp.vista.windows 7.windows 8.windows server 2003|2008|2008R2|2012: 集成开发环境IDE: Vsiual Stu ...

随机推荐

  1. springboot~mogodb多条件拼接

    起因 当前我们使用mongodb进行查询时,有时我们的条件是分块生成的,它可能来自一个列表里,我们的条件需要根据列表去返回数据,这里有个问题,如果遍历列表,然后每次都去从mongodb里查询数据 ,这 ...

  2. debian The type initializer for 'System.Drawing.KnownColors' threw an exception

     Change the "System.Drawing" reference of "CoreCompat.System.Drawing"if you thro ...

  3. 学习ASP.NET Core Razor 编程系列十七——分组

    学习ASP.NET Core Razor 编程系列目录 学习ASP.NET Core Razor 编程系列一 学习ASP.NET Core Razor 编程系列二——添加一个实体 学习ASP.NET ...

  4. 制作联动时,数据绑定combox控件会触发SelectedIndexChanged事件

    看过很多个网站的解决办法,基本雷同,还不能解决,真怀疑他们是互相直接炒的,没事通过验证. 在做省市区的三级联动时候出现这个问题,最后通过先设置值对象和显示对象,最后才绑定数据,这样一个逻辑操作,什么问 ...

  5. postgresql如何让主键自增

    法一: Sql代码 收藏代码 CREATE TABLE customers ( customerid SERIAL primary key , companyname character varyin ...

  6. 从0开始用U盘制作启动盘装Windows10系统(联想R720笔记本)并永久激活方法

    一,制作U盘启动盘 随着个人电脑的“飞入寻常百姓家”,喜欢DIY电脑的发烧友们也越来越多. 安装系统是DIY最基本的要求,很容易做到: 那么如果要求用U盘装系统呢,你可能会说简单,直接下载个老毛桃或是 ...

  7. @Data注解使用后在eclipse中get/set报错解决方法

    Maven项目中已经导入相关的lombok.jar包但是使用后仍提示无set/get方法 安装完成之后,请确认eclipse安装路径下是否多了一个lombok.jar包,并且其 配置文件eclipse ...

  8. vue click事件 v-on:click

    v-on:click <!DOCTYPE html> <html lang="en"> <head> <meta charset=&quo ...

  9. Skyline Te Pro二次开发技能总结

    前两天项目开发中,忽然一个Imagelabel的参数不会调了,但是前段时间可是很熟悉的.好吧,好记性不如烂笔头! 1. 模型弹出窗调试 这里的模型弹出框指涉及到模型操作的,比如监听模型选定事件.根据窗 ...

  10. Fragment与Fragment相互切换之间的生命周期方法

    Fragment 1 切换到 Fragment 2时生命周期变化 1.通过 add hide show 方式来切换 Fragment Fragment1 的生命周期变化为:onCreate().onC ...