问题描述
我有一个像这样的模型,我通过存储过程成功地填充了它。我返回一个视图,其中有两个不同的Kendo网格。我想用successfulData
填充TableNotificationModel
网格。
public class NotificationModel
{
public List<TableNotificationModel> TableNotificationModel { get; set; }
public List<WrongTableNotificationModel> WrongTableNotificationModel { get; set; }
}
@model ModelLayer.Models.NotificationModel
@addTagHelper *,Microsoft.AspNetCore.Mvc.TagHelpers
@addTagHelper *,Kendo.Mvc
@using Kendo.Mvc.UI
@{ ViewData["Title"] = "Index"; }
<script src="//cdnjs.cloudflare.com/ajax/libs/jszip/2.4.0/jszip.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.6-rc.0/js/select2.min.js"></script>
<link href="https://kendo.cdn.telerik.com/2020.2.513/styles/kendo.common.min.css" rel="stylesheet" />
<link href="https://kendo.cdn.telerik.com/2020.2.513/styles/kendo.default.min.css" rel="stylesheet" />
<script src="https://kendo.cdn.telerik.com/2020.2.513/js/kendo.all.min.js"></script>
<script>
window.rootUrl = '@Url.Content("~/")';
</script>
<h1>Upload index</h1>
<div>
<h4>Upload file</h4>
<form asp-controller="Upload" asp-action="Upload"
enctype="multipart/form-data" method="post">
<input type="file" name="file" />
<button type="submit" id="btn">Upload</button>
</form>
@if (ViewBag.Message != null)
{
<script>
$(document).ready(function(){
alert('@Html.Raw(ViewBag.Message)');
});
</script>}
</div>
<div class="clearfix">
@(Html.Kendo().Grid<ModelLayer.Models.NotificationModel>()
.Name("successfulData")
.ToolBar(tools => tools.Excel())
.Pageable(pageable => pageable.Input(true).Numeric(false))
.Scrollable()
.sortable()
.Filterable()
.ColumnMenu()
.Groupable()
.Columns(columns =>
{
columns.Bound(c => c.TableNotificationModel.).Title("ID").Hidden();
columns.Bound(c => c.TableNotificationModel.FirstOrDefault().SETTLEMENT_OBJECTID).Title("settlement code").Width("100px");
columns.Bound(c => c.TableNotificationModel.FirstOrDefault().TECHNOLOGY_OBJECTID).Title("tech code").Width("100px");
columns.Bound(c => c.TableNotificationModel.FirstOrDefault().UPLOAD_SPEED_CLASS_OBJECTID).Title("upload").Width("100px");
columns.Bound(c => c.TableNotificationModel.FirstOrDefault().DOWNLOAD_SPEED_CLASS_OBJECTID).Title("download").Width("100px");
columns.Bound(c => c.TableNotificationModel.FirstOrDefault().DATA_CATEGORY_QOS_OBJECTID).Title("data category").Width("100px");
columns.Bound(c => c.TableNotificationModel.FirstOrDefault().SHAPE).Title("shape").Width("100px");
columns.Bound(c => c.TableNotificationModel.FirstOrDefault().messageOut).Title("message").Width("100px");
})
.DataSource(dataSource => dataSource
.Ajax()
.PageSize(20)
.Read(read => read.Action("Upload_Read","Upload").Data("sendAdditional"))
)
)
</div>
<div class="clearfix">
@(Html.Kendo().Grid<ModelLayer.Models.NotificationModel>()
.Name("unsuccessfulData")
.ToolBar(tools => tools.Excel())
.Pageable(pageable => pageable.Input(true).Numeric(false))
.Scrollable()
.sortable()
.Filterable()
.ColumnMenu()
.Groupable()
.Excel(excel => excel
.FileName("file.xlsx")
.Filterable(true)
.ProxyURL(Url.Action("Excel_Export_Save","Upload"))
)
.Columns(columns =>
{
columns.Bound(c => c.WrongTableNotificationModel.FirstOrDefault().OPERATOR_OBJECTID).Title("ID").Hidden();
columns.Bound(c => c.WrongTableNotificationModel.FirstOrDefault().SETTLEMENT_OBJECTID).Title("settlement code").Width("100px");
columns.Bound(c => c.WrongTableNotificationModel.FirstOrDefault().TECHNOLOGY_OBJECTID).Title("tech code").Width("100px");
columns.Bound(c => c.WrongTableNotificationModel.FirstOrDefault().UPLOAD_SPEED_CLASS_OBJECTID).Title("upload").Width("100px");
columns.Bound(c => c.WrongTableNotificationModel.FirstOrDefault().DOWNLOAD_SPEED_CLASS_OBJECTID).Title("download").Width("100px");
columns.Bound(c => c.WrongTableNotificationModel.FirstOrDefault().DATA_CATEGORY_QOS_OBJECTID).Title("data category").Width("100px");
columns.Bound(c => c.WrongTableNotificationModel.FirstOrDefault().SHAPE).Title("shape").Width("100px");
columns.Bound(c => c.WrongTableNotificationModel.FirstOrDefault().messageOut).Title("message").Width("100px");
})
.DataSource(dataSource => dataSource
.Ajax()
.PageSize(20)
.Read(read => read.Action("Upload_Read","Upload").Data("sendAdditional"))
)
)
</div>
如何用TableNotificationModel
填充一个表,而用WrongTableNotificationModel
填充另一个表?我在这里以FirstOrDefault()
为例进行了尝试,但是我很确定它不会那样工作。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)