使用c#代码而不是javascript更改asp.net/html页面的内容有什么优缺点?具体来说,我想知道如果通过按钮单击从不同的服务器获取JSON对象然后必须将该JSON对象的内容填充到表中然后对该表进行排序,哪个会更好。
此外,用户可以请求多个对象,这意味着将多个表附加到同一页面而不重新加载页面。后面的代码会允许这个或者javascript是更好的选择吗?
答案 0 :(得分:1)
WebMethods / WebServices / WebAPIs在为网页提供内容方面的优势:
WebMethods / WebServices / WebApis的缺点:
客户端技术的优点:
客户端技术的缺点:
在一天结束时,我认为没有最好/最差的技术,只有更适合特定类型工作的工具。如果您需要处理客户端提供的对象和数据,那么JS + HTML + CSS是可行的方法,但是如果您需要持久化并操纵存储在客户端计算机外部的数据或执行需要大量处理的复杂计算电源,然后服务器端技术更适合这项任务。
答案 1 :(得分:0)
在一句话中:ASP.NET
代码背后(C#)是服务器端技术,而javascript(或jQuery)是客户端技术。第一个更强大,与客户端平台无关,而第二个提供更好的响应能力(不需要往返于Web服务器)。对于任何关键业务数据操作(特别是如果安全性是一个主要问题),服务器端技术(即ASP.NET / C#)是首选的。
关于评论中的第二个问题:如果您需要保留任何数据,可以使用ViewState
ot SessionState
个对象(以及global.asax文件中的对象/方法)。
此外,对ASP.NET
的有价值的补充是AJAX
技术(Microsoft VS实现了所谓的UpdatePanel
控件,这极大地简化了与ASP.NEt页面相关的AJAX的实现),提高了ASP.NET
网页的响应能力。
RGDS,
答案 2 :(得分:0)
理想情况下,我更喜欢ASP.NET Web API
,这意味着从服务器通过JSON
获取REST
个完整服务的所有数据,一旦掌握了数据,您的JS/Jquery
应该操纵您的HTML
{1}}或DOM
。对于您的数据而言,两者都是包容性而非排他性的,您必须依赖服务器的安全性。客户端数据不应该很重,不应透露任何PII
。有关动态表操作的信息,请参阅JqueryGrid
,还有更多客户端丰富的控件。