最近在用VS2005开发一个OA项目,项目中需要将新浪或其他网站的最新新闻放在OA首页显示。
具体实施过程中,遇到了一些问题。归纳一下,有三种方法:
1.直接嵌入网页代码
许多网站,如新浪、百度等,都提供了嵌入新闻的代码,使用相对简单,直接引用即可。本人在ASP.NET中嵌入时也遇到问题:如将嵌入代码放在<form></form>内会报错,放在<form></form>外却不会。其原因没有深究,因为毕竟这种代码嵌入后,其格式与项目要求有一定距离。
2.直接读XML文件,一般用于网站专门生成的XML文件。
这种方法最简单,几行语句便可搞定:



3.读取RSS新闻
许多网站都提供了RSS新闻,为项目引用提供了不少方便,大多数用第2种方法可以实现,但有的网站如新浪新闻提供的RSS中用XML读取时会出现无效的字符问题。解决方案如下:





























































4.新闻网页读取后二次处理
还有一些网站并不提供RSS新闻,但提供了嵌入代码,如果完全按其格式嵌入页面,往往不能满足客户要求,以百度新闻为例,其代码是一个JavaScript的document.write语句,但页面较短,读取速度较快,于是便采用了读取后二次处理的办法,代码如下:











































以上在ASP.NET 2.0下实现,仅提供后台代码。