C# 更新网站列表的最佳实践

C# 更新网站列表的最佳实践,c#,html,ajax,list,model-view-controller,C#,Html,Ajax,List,Model View Controller,我已经创建了一个ASP.NET MVC应用程序。我们有一个列表,其中显示了数据库中当前的所有项目。我们还有一个按钮,显示一个弹出对话框,您可以在其中创建另一个条目。我们希望在创建此项目时将其添加到列表中。现在我的问题是,以下哪种方法更适合于此: 手动(通过javascript)将项目添加到列表中。我担心的是,这让人感觉很不舒服/不是很好的练习 重新加载页面,以便从数据库中重新加载所有条目 在性能和“良好实践”方面,哪种方法更适合此目的(我应该提到,列表将在100-200项左右徘徊) 提前谢谢

我已经创建了一个ASP.NET MVC应用程序。我们有一个列表,其中显示了数据库中当前的所有项目。我们还有一个按钮,显示一个弹出对话框,您可以在其中创建另一个条目。我们希望在创建此项目时将其添加到列表中。现在我的问题是,以下哪种方法更适合于此:

  • 手动(通过javascript)将项目添加到列表中。我担心的是,这让人感觉很不舒服/不是很好的练习

  • 重新加载页面,以便从数据库中重新加载所有条目

在性能和“良好实践”方面,哪种方法更适合此目的(我应该提到,列表将在100-200项左右徘徊)


提前谢谢

您可以对服务器进行回调,回调成功后,您可以继续在列表中添加新项。不需要刷新整个页面

类似这样的内容(摘自):


}))

我将异步重新加载列表。这取决于它的编码方式,可以通过服务器端代码或javascript ajax调用来完成。

我首先能够提交表单并重新加载页面

您可以添加使用ajax提交表单的功能,然后如果表单通过验证并返回成功消息,则通过javascript将新项添加到列表中


这样,如果有人禁用javascript,他们仍然可以提交表单,但他们只需要刷新页面。或者,如果ajax调用失败,您仍然可以求助于页面刷新。

将数据异步加载到页面中没有什么错——这是大多数网站都会做的,包括这里。此外,术语“最佳实践”经常被用作避免思考的一种方式,而不是寻找最适合您需要的解决方案。如果他们禁用了javascript,那么他们就不配进入21世纪的互联网。禁用javascript可以带来一些好处。比如没有广告,没有分析跟踪你的一举一动,提高了安全性,更快的网站没有运行/处理javascript。全面禁止javascript也会破坏大多数网站的功能。我知道有像NoScript这样的工具是为有安全意识的人设计的,但是javascript已经成为现代互联网的一个基本组成部分,并不是什么可以抛弃的东西。
$.ajax({ url: '/Controller/Action/Id',
     success: function(data) { alert(data); }, 
     statusCode : {
         404: function(content) { alert('cannot find resource'); },
         500: function(content) { alert('internal server error'); }
     }, 
     error: function(req, status, errorObj) {
           // handle status === "timeout"
           // handle other errors
     }