我正在开发一个.Net Core应用程序,我已经参与了我需要根据用户点击量逐步添加数据的代码。首先,我有一个元素表。一旦点击任何元素,我需要从我的实体框架实现中获取一些数据,并根据我得到的内容我应该发布" post"以表格格式显示在视图中。
然后用户可以进一步点击该新表中的元素,并根据我需要的点击来绘制一个带有指针的地图。
我想知道.Net Core在这样的网站上有什么好的做法?
目前我有一个类似的视图,但只有一个表和一个partialView
。他们实现的方式是使用我的site.js
来注册点击和HTML元素data-url
来运行我的控制器方法。这是最好的还是最优的方法还是有更聪明的方法?我真的只想知道有哪些类型的解决方案..
我和一些朋友谈过,他们提到他们会在HTML中创建一个<script></script>
部分来执行这样的操作。我不会认为这是代码读取能力和最快可能响应的最佳实践,但我对所有其他方法都赞不绝口。
答案 0 :(得分:1)
动态内容
对于我的观点,添加动态HTML代码的最好方法是
GET
个动作,以从部分视图中获取渲染的html代码(在这里您可以决定要返回的内容)示例:的
GET行动
[ResponseCache(NoStore = true, Duration = 0)]
public async Task<IActionResult> NewStamp(string date, string recentProject)
{
// Do work with paramters and evaluate right html-code
return PartialView("_CollectionPartial", new ViewModel(date, recentProject));
}
HTML按钮
<button asp-controller="Stamps" asp-area="WorkTime" asp-action="NewStamp" id="addStamp" type="button" class="btn btn-success">
<span class="glyphicon glyphicon-plus"></span> Add
</button>
ajax-request
$.ajax({
url: this.formAction,
data: "date=" + date.format("HH:mm") + "&recentProject=" + recentProject,
cache: false,
success: function (html) {
$('#id').append(html);
处理.js文件
昨天我毫不费力地问了一个类似的问题 但我构建了自己的解决方案,请参阅this post。