【问题标题】:Strictly using static html files, jquery, ajax and json web services for a website?为网站严格使用静态 html 文件、jquery、ajax 和 json 网络服务?
【发布时间】:2011-06-17 11:25:59
【问题描述】:

我使用 ASP.Net MVC 已经有一段时间了,我一直在想:

<% foreach(ItemRow in Items) { %> <div><%=ItemRow.Description%></div> <% } %>

让我想起了 ASP Classic 和 PHP。是的,有明显的改进,但它仍然让我有点畏缩。

我一直在考虑,而不是只编写静态 html 并严格使用 jQuery 从 web 服务收集 JSON 结果并适当地填充页面。有没有人尝试过这种方法?你的经历是什么?

【问题讨论】:

  • 你看过 Razor 视图吗,那些不使用“蜜蜂蜇伤” 而是更简洁的语法 @ ?weblogs.asp.net/scottgu/archive/2010/07/02/…
  • 您确实意识到您的 javascript 模板中会有类似 {{jqueryVar}} 的内容,对吧?这不是你想要避免的吗?它认为任何基于文本的模板将始终围绕 xml 内的代码块进行解析。
  • @jfar - 实际上我的计划是提供 html 元素类和 id,然后 jquery 可以选择并填充数据。并不是我不喜欢模板化,我只是 1)希望模板被缓存,2)希望客户端处理数据的填充。

标签: jquery asp.net-mvc json static-html


【解决方案1】:

我发现自己越来越多地这样做了。我发现做简单的以客户为中心的应用程序更快。唯一的“问题”是安全和会话状态管理。但这不是交易杀手。

取决于您的观点,但我们发现的积极因素之一是我们可以构建业务和数据层,允许我们的前端开发人员构建他们的界面愿景而没有太多限制,最后我们可以允许经验不足的开发人员做更多的连接 jquery 的东西。从业务角度来看,这具有更高的投资回报率,因为我可以让高端工程师和开发人员更好地利用他们的时间。

【讨论】:

  • 我真的很喜欢你关于如何让经验不足的开发人员对 jquery 的东西感到厌烦以及它如何使前端开发人员更容易的观点。
  • 您是如何处理身份验证、授权和会话的?
  • @Kynth Well 会议不是问题。我们不经常使用它,但您仍然可以通过处理程序使用它。处理程序代码可以检查会话、有效性等。身份验证和授权可以通过登录时的单个回发类似地完成,然后例如维护该服务器端。
  • 我还没有完全放弃蜜蜂蜇伤,但我已经开始更多地在 Web 应用程序上使用这种方法,我认为这些应用程序将受益于它提供的优势。
【解决方案2】:

我同意具备以下条件:

<% foreach(ItemRow in Items) { %> <div><%=ItemRow.Description%></div> <% } %>

在您看来可能很难看。这就是我编辑/显示模板的原因。所以代码看起来像这样:

<%= Html.DisplayFor(x => x.Items) %>

并在相应的展示模板中:

<div><%: Model.Description %></div>

就您的第二个问题而言,关于使用 jQuery 从各种 Web 服务收集 JSON 数据并构建 UI,这种方法可能适用于更简单的场景,但恕我直言,对于复杂的业务应用程序,您可能需要考虑 ASP.NET MVC 甚至 Silverlight。

【讨论】:

  • 我现在实际上正在使用 asp.net mvc,我觉得混​​合在一起的视图代码和视图 html 变得非常快。我的想法是为模板视图创建“哑”控制器,并拥有一组只返回 JSON 的面向数据的控制器。
猜你喜欢
  • 2011-09-15
  • 1970-01-01
  • 1970-01-01
  • 2017-12-03
  • 2023-03-25
  • 1970-01-01
  • 1970-01-01
  • 2012-11-26
  • 2011-03-27
相关资源
最近更新 更多