[已解决问题] 关于shtml的问题
提问时间: 2008-07-07 23:03
悬赏分:100 浏览:251 次

知道shtml如何包含一个静态的文件,但是怎样才能包含一个aspx的文件呢?

我想做一个新闻板块,让新闻静态化成shml,然后包含一些动态页面,动态页面用来显示广告,评论等,但是我不想用ajax和iframe,这样对搜索引擎不友好,各位有什么好建议吗?

谢谢!

所有回答(4)
你可以这样做,让aspx在一定的时机生成静态文件,然后再有shtml包含这些生成的静态文件。这样效率会高一些,而且也可以避开你上面的问题,据我所知,很多cms都是这么做的。 注:一定的时机,可以是有新内容时,也可以是根据时间定时生成
3个月前   回答者:玉开 - 大侠五级
<!--#include file="../inc/bottom.htm" --> 可以包含
3个月前   回答者:Such Cloud - 菜鸟二级
用aspx包含静态生成的文件就可以了,里面的动态内容可以根据需要选择过期策略.
3个月前   回答者:沙加 - 老鸟四级
shtml 没用过 如果是html就可以这样做 1用ifram应该可以搞定 2如果ifram不理想的话 还有一种 将数据写成这种形式 getCount.aspx <%@ Page Language="C#" AutoEventWireup="true" CodeFile="getCount.aspx.cs" Inherits="getCount" %> var messageCount; //文章数量 function getCount(paramCount) { messageCount =paramCount; putCount(); } getCount(<%= messageCount %>) 然后再在 html写成这种形式 showCount.htm<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head> <title>显示数据</title> <script language="javascript" type="text/javascript"> function putCount() { document.getElementById("Text1").value = 1; // 将1赋给Text1 document.getElementById("Text2").value = messageCount; // 将messageCount赋给Text2 } </script> </head> <body> <input id="Text1" type="text" /> <input id="Text2" type="text" /> <script language="javascript" src ="getCount.aspx" ></script> </body> </html> 通过这句调用数据 <script language="javascript" src ="getCount.aspx" ></script> 通过方法 function putCount() { document.getElementById("Text1").value = 1; // 将1赋给Text1 document.getElementById("Text2").value = messageCount; // 将messageCount赋给Text2 } 把数据传入指定部分 至于后台考虑性能 传入数据的这部分 getCount(<%= messageCount %>) 可以加页面缓存 也可以加数据缓存
3个月前   回答者:小眼睛老鼠 - 小虾三级
评论
3个月前   PerfectDesign :
补充一下,我现在的解决办法就是只有让shtml包含一个静态文件,而那个静态文件是每三分钟生成一次的,其他的动态内容是由ajax动态请求。
不知道有没有做过shtml的大牛..............
3个月前   玉开 :
我也补充一下,如果按你的思路在这里你要包含的aspx文件都是生成一些页面的html碎片,如果是这样的话,你可以把aspx文件改成ascx控件,然后让处理aspx文件的编译器,去处理shtml文件。
3个月前   PerfectDesign :
不太明白玉开的意思,是让一个windows服务循环生成呢?还是让shtml包含一个aspx文件呢?
你可以把aspx文件改成ascx控件,然后让处理aspx文件的编译器,去处理shtml文件。
你这句话不太明白什么意思
3个月前   PerfectDesign :
Such Cloud 你的方式是不可以包含动态文件的
3个月前   PerfectDesign :
那样的话效率还是有一定的问题,我还是想采用shtml,就是对动态文件不好处理。既要考虑seo,还要考虑性能
3个月前   玉开 :
web.config中有这么一个配置节,你可以msdn了解一下详细:
<compilation defaultLanguage="c#" debug="true">
<buildProviders>
<add extension=".shtml" type="System.Web.Compilation.PageBuildProvider"/>
</buildProviders>
</compilation>
   您需要登录以后才能回答!
 

我要提问

我的问题


快到期问题

> 问题排行榜

相关内容

相关链接