繁体   English   中英

使用动态/虚拟页面创建.NET Web应用程序

[英]Creating a .NET Web Application with Dynamic/Virtual pages

我们对创建一个本质上非常动态和通用的Web应用程序有一定的要求,该应用程序具有大量基于配置的功能。

我正在考虑一种体系结构,通过该体系结构,我们可以使用单个动态页面公开基于Web的功能。 此页面呈现的功能以及该功能的各个设置都可以通过主XML文件/数据库进行配置和驱动。

此XML文件/数据库将具有与基于浏览器中的URL呈现页面的方式有关的所有配置。

因此,我认为我们将有一个URL列表,所有这些URL都需要重定向到此特定页面。 在此页面中,我认为我们将检查当前URL,然后从XML文件/ DB中为该URL选择相应的设置(如果未找到则不显示任何内容或标准消息)。

首先,我有两个问题,我想确定是否可以设置Web应用程序,以便将所有可能的URL解析为特定页面。

其次,我想知道我提出的方法可能存在什么问题。 可行吗 优点和缺点等一些一般性的想法和讨论将不胜感激。

通常,您正在编写内容管理系统(CMS)或其中的一个简化版本。 这些系统存储配置信息(通常在数据库中),并使用它来呈现可自定义的页面。 我会考虑是否只使用一个开箱即用的功能(这将取决于用户真正希望系统如何配置)。

回答您的特定问题:

“如果有一种方法可以设置Web应用程序,以便所有可能的URL都解析为特定页面。” -是的,您可以设置一揽子转发/重新路由/重定向规则。 具体情况取决于您用来承载应用程序的内容。 这是针对IIS( https://technet.microsoft.com/zh-cn/library/cc732969 ( v=ws.10 ) .aspx )。 url都需要放在盒子后面的域中

就利弊而言,这就是我想到的利弊:

  1. 其他人已经编写了许多样板代码。 如果用户想要非常可定制的内容,则可能要考虑使用某种CMS,然后对其某些组件进行编码。 这样,用户甚至可以设计/发布自己的页面。 这种方法将使您免于编写和维护许多自定义代码(dot net nuke是基于.net的CMS的示例)来处理配置。

  2. 增加了测试范围。 如果用户要求X,并且您正在构建X,它也应该支持配置为像Y和Z一样工作,那么您还需要测试Y和Z。 它是一项前期投资的赌博。

  3. 应用程序的单点故障(如果路由页面失败,则所有内容均无法访问)

  4. 开发者技能集-具有专家和后端开发技能集的全面发展(全栈)开发者比专家更难找到。 如果您要构建一个在UI中动态呈现组件的系统-则其javascript必须非常干净。

优点:

  1. 对适合您的配置框架的新功能进行编码应该很容易。

  2. 能够在运行时引入新功能/组件-如果新组件所需的全部是config和指向它的url,则可以在运行时通过db / config插入将其添加到应用程序中。

  3. 满足您确切的用户定制需求。 这是每种自定义方法(相对于现成产品)的“专业”,因为您正在构建应用程序-无需构建任何应用程序,就可以使其适合您正致力于的确切业务流程或用户体验。 -在CMS的限制中。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM