0

我被分配开发一个看起来类似于MSDN Library的网站。

根据 MSDN Library,我感觉他们的树形菜单已在数据库中更新。它们不像其他 Javascript 树形菜单那样固定。但我不确定,我只是怀疑,MSDN库的Tree Menu中的段落是否存储在数据库中?如果是真的,尊敬的,能否请您简要解释一下MSDN库数据库图?我非常感谢 StackOverFlow 中的所有贡献者,并期待回复。

4

1 回答 1

1

这是真的,以下来自Scott Hanselman 的博客讨论 msdn

我认为不能只有(loband)“开关”,我提到我认为不得不破解 URL 有点不稳定。事实证明,整个 MSDN 系统不是磁盘上的一堆文件,而是带有 ASP.NET 虚拟路径提供程序的数据库中的文件。Tim Ewald 早在 2005 年 2 月就写过他们是如何做到这一点的。这在当时是一种穷人的 ASP.NET 路由:

规范化路径指向磁盘上不存在的文件。相反,页面数据存储在内容缓存中。该系统使用 VirtualPathProvider (VPP) 来弥补两者之间的差距。从本质上讲,VPP 拦截所有 ASP.NET 管道对文件流的请求,并让您有机会从您喜欢的任何地方加载它们。每个 ASP.NET 应用程序都使用一个简单地映射到文件系统的默认 VPP。基于 MTPS 的站点注册一个自定义 VirtualPathProvider,它位于默认 VPP 的前面,形成一个链。自定义 VPP 使用 HTTP 模块的 OnPreResolveRequestCache 事件处理程序存储在 HTTP 上下文中的 DocumentInfo 和 ContentSet 对象从内容缓存加载主题并将其作为 .aspx 文件流返回。

如果您想了解更多关于 MSDN 是如何构建的,请查看Tim Ewald 的链接文章

于 2009-06-11T13:03:18.567 回答