ASP.net核心,更好更快,jquery或剃须刀[关闭]

问题描述 投票:-3回答:1

我正在尝试在ASP.NET中完成我的第一个项目,我决定通过razor从Class“Calendar”渲染数据。它是一个静态类,只需要处理一个带有静态数组的对象,如days和monthsNames等。但这是否意味着,所有这些都是在服务器上处理的?通过jquery(client sideenter image description here)渲染这个不是更好吗?

c# jquery asp.net asp.net-core razor
1个回答
1
投票

与许多事情一样,您需要权衡利益冲突。使用Razor,是的,您正在处理服务器上的更多信息,但您只能通过网络提供完成的HTML。要使用JQuery来完成相同的操作,您必须将整个数据模型序列化为Javascript对象(这也需要服务器处理),然后通过网络传递所有额外的数据......如果您确实需要所有数据,那么这可能并不可怕,但在很多情况下,你最终只会显示一小部分数据。内存操作通常比通过网络传递大量数据来处理更快,更有效。

出于其他考虑,请回想一些浏览器将禁用JavaScript。任何依赖JavaScript的东西都需要某种回退方法,或者某些用户可能会失败。此外,如果模型中存在您不希望向用户公开的敏感信息,则最好在服务器上处理它,以便您只能显示您希望用户看到的信息。如果您使用JQuery序列化所有内容并对其进行处理,那么用户就可以看到所有内容(即使他们必须在HTML源代码中找到它来查找它。)

没有一个正确的答案,因为它取决于用例,但根据经验,我可以在创建初始视图时使用Razor,并保存JQuery以对DOM进行更改(例如,隐藏当用户点击一点红色“X”时div,以防止对服务器的不必要的请求。

© www.soinside.com 2019 - 2024. All rights reserved.