ASP.NET以智能和快速的方式保存网页布局

时间:2009-09-17 09:55:34

标签: asp.net database layout storage dynamic

alt text http://www.pafo.net/example.png你好!

我不知道我应该对这个关于ASP.NET和保存网页布局的问题进行标题。我将指的是BBC只是说明了我的追求。 http://news.bbc.co.uk/

该页面每天将有大约10,000-20,000名访问者。我有一个MS SQL 2008数据库,我正在编程ASP.NET(C#)3.5。

我正在制作像BBC这样的杂志/纸张,但是格式较小,现在管理员必须能够设置一般页面的样式(如经济,政治等),并放置要显示的文章以及如何显示它们。在BBC页面上(当我现在正在看它时)你在第一行有一篇大文章,然后在第二和第三行有一篇小文章,然后是一个包含“特色,视图,分析”的文章。我附上了一幅画有不同颜色区域的图片。我不想让管理员修改一般页面的外观,从而按顺序排列新闻。

  • 我遇到的第一个问题是如何保存它以获得最佳速度,既可用于获取网页,也可用于编辑网页。所以我认为在XML文档中以XML格式保存页面将允许我添加我想要的功能,因为我可以修改XML并在我扩展程序时添加新标签。但问题是然后将其加载到客户端,我可以在管理员按下保存时在服务器上创建.aspx页面,或者我可以在每次有人想要显示网页时动态加载它。有关绩效的任何想法吗?

所以流程是: 1)管理员更改管理面板中特定页面上的布局,他或她更改要显示的文章以及放置它们的位置。 (单个,旁边另一篇文章等) 2)然后管理员保存更改。 3)用户现在可以查看更新的布局 4)管理员可以加载布局以进行进一步更改。

  • 第二个问题是我的右侧有小盒子,这些盒子里的内容既可以反映文章/网页,也可以是不同的东西。管理员选择在创建文章时使用的框。现在,如何保存该信息并高效地加载框。这些盒子在创建时面临着与上述相同的问题,如何以良好的方式保存它们,以便文章可以快速加载它们。 我正在考虑将信息保存在XML文档中,如上所述。当管理员创建文章时,然后将框ID-number保存在MS SQL 2008数据库中的某个表中,并将id-number保存到正确的文章中。但同样的问题出现了,如果我动态加载框或创建每个框作为Web用户控件,然后加载它,如:WebControl_1234 boxControl =(WebControl_1234)LoadControl(“数据路径”+ box_id_from_sqlserver);

有什么想法吗?

2 个答案:

答案 0 :(得分:1)

哇,这是一个'长问题'。您可能需要考虑以您最熟悉的方式构建它,例如DB中的数据,aspx中的布局,动态/静态WebControls等。

在抛光之前使其工作,然后运行一系列测试以了解性能和可扩展性。缓存机制可以是一个有用的开始。

这绝不是一个完整的答案,只是开始滚动的东西。

答案 1 :(得分:0)

如果表现是最重要的,那么没有什么能比静态的html好。

那么,您如何构建一个系统,以便管理员可以更改布局,然后将生成的页面保存为html,以便网络服务器可以选择它?

来自CodingHorror.com

  

什么是Movable Type的表现   秘密?最长的时间 - 几乎   5年 - 我用的是版本I.   从2.66开始。那个版本   Movable Type编写每个新博客   作为单个静态输入到磁盘   HTML文件。事实上,每个博客条目   你看这里是一个物理HTML文件,   IIS就像它一样提供服务   提供任何其他HTML文件   在一个文件夹中。它闪电般快速,而且   提供数十万   网页浏览量没有汗水。一个动态   页面的功能,评论,是   通过回发CGI处理   将页面写回每个磁盘   添加了新评论。 (这也是   偶尔评论的来源   磁盘写入冲突时,两个   评论者碰巧发表评论   在同一时间。)是的,这是一点点   原始的,但它也非常多   KISS的精神:为什么不这样做   可能最简单的事情   工作?