我最近参加了一个大型企业系统的演示,它的网页可以定制到包含客户端添加的字段的程度。据我了解,他们的架构由以下几层组成:
- 数据库
- 网络服务 API
- 规定布局的 XML 文件
- 从 XML 文件生成的网页。
当我被要求研究建立一个可以轻松打上品牌的门户网站时,这让我觉得这是一个很好的方法。现在的问题是如何设计它。
我了解数据库和 Web 服务层,但我对在 .NET 中构建网站的各种可能性感到有些困惑。
考虑到可定制性的要求和上面的架构,我是这样理解这些选项的:
- Webforms - 我最熟悉的选项,但它本质上是丰富的带有代码隐藏的 HTML。我认为可能需要做很多工作才能使其与 XML 布局的想法一起工作。
- WPF - XAML 中间层是内置的,但据我了解,WPF 只能用于浏览器应用程序而不是网站。
- Silverlight - 更多地用于构建小程序而不是网站,对吧?
- MVC - 这看起来很有趣,但我看到的所有演示也都使用实体框架。在我看来,具有所有自动代码生成功能的 Entity Framework 更适合全新的应用程序。就我而言,我有一个已经存在的非常大的数据库。
如果以上都不合适,我想了一个替代方案。可以使用返回品牌元素的 Web 服务创建一个标准的 Webforms 站点。这与我在顶部描述的不太一样,但足以满足我的需求。
还是我在叫错树?