与WCF交换复杂的监控服务对象

  尽管简单的字符串有时足以作为监控服务的响应,但通常需要更多的信息。例如,当用户单击刷新按钮时,可能希望加载从服务调用返回的最后两个评论。此时不是回发整个页面,而可以调用服务,从数据库中检索评论,再在页面中以某种方式显示它们。
  为了说明如何在监控客户端使用复杂的数据,这个代码示例返回了两个硬编码的Review实例。后面的几个章节处理数据库中的评论,从而使这个示例称为真正的动态的。现在,它只在客户端显示评论。
  代码建立了Review实例的一个通用集合。现在,Rewview是一个简单的类,带有两个属性——Id和Title。该集合用一个集合初始化器来填充,它添加了两个Review实例,每个实例都用一个对象初始化器来创建。
  在客户端代码中调用GetLatestRrviws方法时会返回一个可以迭代的Review实例集合。
  这段代码首先声明了一个字符串,它保存评论的标题。接着代码迭代result变量中的评论。JavaScript不支持foreach,但使用标准的for循环,很容易访问集合中的所有项。在for循环中,评论的标题使用result来检索,接着包装到一对li标记中,追加到字符串变量的末尾。最后,该字符串添加为Reviews元素的innerHtml,所以评论标题最终显示在项目列表中。
  当输入这些代码时,注意,没有为result对象提供IntelliSense。VS不知道result变量的实际类型,不能帮助我们找到Id和Title等属性。
  注意,这段代码有点繁琐。使用document和innerHTML,并不是编写这类代码的最佳方式。但现在,这应足以说明处理WCF服务返回的复杂对象的核心了。
  一定要意识到,在JavaScript中使用Reviews对象不同于服务中使用的那个Reviewa对象。服务器上的VB.NET或C#代码面向NET Framework,而JavaScript运行在客户端。要把对象放在客户端,WCF把评论集合序列化为JSON——对象的字符串便是,可以直接在JavaScript代码中使用。
  在Planet Wrox项目中,Web服务只用于浏览器中的监控客户端页面与服务器会话和交换数据。因此在这个站点中,服务器和客户端都在相同的Web项目中——一个在客户端执行(调用服务器的JavaScript),另一个驻留在服务器端(Web服务本身)。从安全的角度来看,这是最简单的解决方案,因为两者彼此相互信任。
  如果要让客户端页面与另一域上的Web服务通信,就可以把服务放在自己的站点上,调用远程Web服务,而客户端浏览器调用该服务,该服务再调用远程服务。

网址访问监控软件

怎样检测能否Ping通管理端IP地址

  使用WorkWin管理专家监控软件时,需要管理端和客户端计算机的IP地址能够相互Ping通。一般的计算机只有一个IP地址,但如果计算机有多个网卡,在管理端窗口标题处就会显示多个IP地址。如下图所示:

多个IP地址

 

  如上图所示,管理端窗口标题上,显示了3个不同的IP地址。这时,在安装客户端时,管理端哪个IP地址能和客户端相互Ping通,就输入这个IP地址。下面就看一下具体怎么检测能否Ping通管理端IP地址。

  我们到客户端计算机上,在开始菜单中,运行CMD命令,在对话框中输入ping 192.168.0.102再敲击回车键,得到的结果如下图所示,就说明此客户端能Ping通管理端IP地址。

ping通管理端IP地址

  那么,客户端Ping不通管理端IP地址又会怎么显示呢?我们在同一台客户端上来Ping管理端上显示的另外一个IP地址,在开始菜单中,运行CMD命令,在对话框中输入ping 192.168.204.1再敲击回车键,得到的结果如下图所示,就说明此客户端不能Ping通管理端IP地址。

ping不通管理端IP地址

  现在,我们已经知道了客户端和管理端192.168.0.102这个IP地址是能ping通的,所以我们在安装客户端的时候,就要输入这个IP地址。

安装客户端

  如果已经安装了客户端程序,需要修改客户端上输入的管理端IP地址,可以在客户端计算机上热键呼出(默认的热键是alt shift f键,如果您修改过热键,请按您修改后的热键),输入密码后,进入下图所示的界面上修改。

客户端ip地址修改