构建模板化的MVC + AJAX ASP.NET应用程序

时间:2012-10-15 20:48:35

标签: asp.net-mvc templates mono

我在WebForms方面有很好的经验,但现在我想进一步研究下一个ASP.NET项目。我希望网站管理员可以完全自定义新应用程序的UI。

目前,使用WebForms,为了仅修改自定义模板文件夹中页面/控件的外观,可以执行以下操作:

  1. 定义.ascx / .aspx文件以便从包含逻辑的正确类继承
  2. 让应用程序使用LoadControl从动态文件路径加载控制对象
  3. “修改外观”的示例可能意味着在页面上移动控件,使用搜索按钮反转搜索框等等......我并不仅仅意味着编辑CSS,字体,图标等。

    我还没有使用MVC,但我读了几个教程。以下是进一步研究的几个问题:

    1. MVC4能否与Mono一起使用?
    2. MVC是否支持Master Page或类似的概念?我想为所有页面定义一个通用布局,并使用适当的模板专门化每个页面的内容。如果没有,我可以使用什么样的构造?
    3. MVC是否内置了AJAX支持?否则,我可以使用哪些免费工具在MVC中开发AJAX网站?
    4. MVC是否支持用户控件的概念?我想开发视图/控制器逻辑和login-with-facebook-or-any-other-openid框的布局,与放置它的页面分开,就像我对.ascx文件一样。我该怎么办?
    5. 我已经阅读了有关Razor模板引擎的信息,这似乎是一个很好的起点。在我的情况下,我通常希望将视图/控制器逻辑保持为“静态”,并允许管理员仅更改外观。因此,例如,可以覆盖搜索框外观,但它总是触发相同的操作执行相同的操作(搜索数据库)

1 个答案:

答案 0 :(得分:2)

  

1)MVC4能否与Mono一起使用?

据我所知,ASP.NET MVC 4适用于Mono。它是否运作良好我不能说因为我从来没有在Mono上使用过MVC。

  

2)MVC是否支持Master Page或类似的概念?我想为所有页面定义一个通用布局,并使用适当的模板专门化每个页面的内容。如果没有,我可以使用什么样的构造?

是的,它支持视图从这些母版页继承的母版页。如果您使用的是Razor视图引擎,则这些母版页称为布局。

  

3)MVC是否支持AJAX?我可以使用哪些免费工具在MVC中开发AJAX网站?

如您所知,AJAX与服务器端语言无关。当然,MVC支持AJAX。您可以使用Visual Studio Express 2012 for web作为开发ASP.NET MVC应用程序的免费工具。

  

4)MVC是否支持用户控件的概念?我想开发视图/控制器逻辑和login-with-facebook-or-any-other-openid框的布局,与放置它的页面分开,就像我使用.ascx文件一样。我怎么能这样做?

没有用户控件是MVC中不再存在的东西,也不受支持。如果您想开发一些页面的可重用部分,可以使用部分视图。和孩子的行动。 Phil Haack有nice blog post关于儿童行为的事。