【发布时间】:2019-10-31 05:15:45
【问题描述】:
我正在学习 MVC - 在 VS2019 中使用 .NET Core 的 MVVM。我正在学习复数课程并使用我现有的表格来尝试掌握它....
当我从视图模型中引入剔除和剔除映射时,它只显示标签
,
但不是记录的详细信息。由于我缺乏经验,我相信这很简单。我将在下面发布代码sn-ps。
Details.cshtml
@model DRMS.EDX.Web.ViewModels.DataFileViewModel
@using Newtonsoft.Json
@{
ViewBag.Title = "DataFile Details";
}
@section scripts{
<script src="~/Scripts/knockout-3.5.0.js"></script>
<script src="~/Scripts/knockout.mapping-latest.js"></script>
<script src="~/Scripts/datafileviewmodel.js"></script>
<script type="text/javascript">
var dataFileViewModel = new DataFileViewModel(@Html.Raw(Model));
ko.applyBindings(dataFileViewModel);
</script>
}
<h2>@ViewBag.Title</h2>
<p data-bind="text: MessageToClient"></p>
<div>
<div>
<label>DataFileLayoutID :</label>
<span data-bind="text: DataFileLayoutID"></span>
</div>
<div>
<label>CreatedByID :</label>
<span data-bind="text: CreatedByID"></span>
</div>
<div>
<label>CreatedDate :</label>
<span data-bind="text: CreatedDate"></span>
</div>
<div>
<label>ModifiedByID :</label>
<span data-bind="text: ModifiedByID"></span>
</div>
<div>
<label>ModifiedDate :</label>
<span data-bind="text: ModifiedDate"></span>
</div>
<div>
<label>HasScheduleA :</label>
datafileviewmodel.js
DataFileViewModel = function (data) {
var self = this;
ko.mapping.fromJS(data, {}, self);
};
Controller
public async Task<IActionResult> Details(Guid? id)
{
if (id == null)
{
return NotFound();
}
var dataFile = await _context.DataFiles
.FirstOrDefaultAsync(m => m.Id == id);
if (dataFile == null)
{
return NotFound();
}
DataFileViewModel dataFileViewModel = new DataFileViewModel();
dataFileViewModel.Id = dataFile.Id;
dataFileViewModel.DataFileLayoutID = dataFile.DataFileLayoutID;
dataFileViewModel.CompanyID = dataFile.CompanyID;
dataFileViewModel.FileTypeId = dataFile.FileTypeId;
dataFileViewModel. FileNameID = dataFile.FileNameID;
dataFileViewModel.MessageToClient = "I originated from the
viewmodel, rather than the model.";
return View(dataFileViewModel);
}
【问题讨论】:
-
浏览器控制台报错了吗?
-
加载资源失败:服务器响应状态为 404 () datafileviewmodel.js 加载资源失败:服务器响应状态为 404 () knockout-3.5.0.js 失败加载资源:服务器响应状态为 404 () knockout.mapping-latest.js 加载资源失败:服务器响应状态为 404 () datafileviewmodel.js 加载资源失败:服务器响应状态为404 () 00000035-0075-0000-0000-000000000000:157 未捕获的 ReferenceError: DataFileViewModel 未定义在 00000035-0075-0000-0000-000000000000:157
-
在 Core 2 中捆绑有最佳实践吗?如果是这样,那会是什么?我在哪里可以看到它完成的?
-
所以我只是遇到此控制台错误...无法加载资源:服务器响应状态为 404 () 00000035-0075-0000-0000-000000000000:157 未捕获的 ReferenceError: DataFileViewModel未定义在 00000035-0075-0000-0000-000000000000:157
-
404错误表示没有找到请求的页面。打开浏览器检查器,打开网络选项卡并重新加载页面。您应该能够看到未找到的资源并了解调用了哪个 url...无论如何我认为这是服务器端问题。
标签: mvvm knockout.js asp.net-core-mvc