Javascript ASP.net Core 2.1中的敲除js返回未定义?
我对Kcnockout Js有一个问题,当他试图返回结果时,他将结果无差别地返回给我,我已经验证了承包商,如果他正在返回我的数据,如下图所示 但是在加载值列表时在视图中,它使我意识到它是未定义的,如下图所示 我不知道他为什么给我发这个信息这是我的控制器代码Javascript ASP.net Core 2.1中的敲除js返回未定义?,javascript,jquery,ajax,asp.net-core,knockout.js,Javascript,Jquery,Ajax,Asp.net Core,Knockout.js,我对Kcnockout Js有一个问题,当他试图返回结果时,他将结果无差别地返回给我,我已经验证了承包商,如果他正在返回我的数据,如下图所示 但是在加载值列表时在视图中,它使我意识到它是未定义的,如下图所示 我不知道他为什么给我发这个信息这是我的控制器代码 public JsonResult GetGender() { ServiceResult serviceResult = new ServiceResult(); serviceResult = this._gen
public JsonResult GetGender()
{
ServiceResult serviceResult = new ServiceResult();
serviceResult = this._genderServices.GetListGenders();
return Json(serviceResult);
}
这是视图代码
<h2>Generos</h2>
<hr />
<p data-bind="visible: IsNewButton">
<a href="#" data-bind="click: New" class="btn btn-primary">Crear Nuevo</a>
</p>
<div id="divListGenders" data-bind="visible: ShowResult">
<table class="table">
<thead>
<tr>
<th>
Genero
</th>
<th></th>
<th></th>
</tr>
</thead>
<tbody data-bind="foreach: Genders">
<tr>
<td style="text-align:left" data-bind="text: GenderName"></td>
<td style="text-align:center">
<a href="#" data-bind="click: $parent.Edit" class=" btn btn-warning"><span class="glyphicon glyphicon-edit"></span></a> |
<a href="#" data-bind="click: $parent.Details" class=" btn btn-info"><span class="glyphicon glyphicon-eye-open"></span></a> |
<a href="#" data-bind="click: $parent.Delete" class=" btn btn-danger"><i class="fas fa-trash"></i></a>
</td>
</tr>
</tbody>
</table>
</div>
<div data-bind="visible: IsBackToListButton">
<a href="#" data-bind="click: BackToList" class="btn btn-info">Regresar</a>
</div>
<script src="~/js/Gender.js"></script>
我在asp.net MVC 5上提供了它,它工作得很好,我不知道为什么它在asp.net Core 2.1中对我不起作用,我非常感谢
asp.net Core
中的帮助将输出序列化为JSON
的默认情况是camelcase,而asp.net MVC 5
的默认情况是Pascal
请注意,文章中的第一个图像显示的所有属性都是camelcase:
Object { success: true, message: null, data: Array(1) ... }
类似于数据
数组中的项目:genderId
,genderName
等
解决这个问题的一种方法是通过应用camelcase属性名来更新javascript
代码和Knockout
绑定。例如
或者,您可以选择将Web API配置为返回基于Pacalcased的JSON,例如,在
启动中使用下面的代码配置服务
:
services
// ...
.AddJsonOptions(options => {
options.JsonSerializerOptions.PropertyNamingPolicy = null;
})
// ...
在ASP.NET Core
中,将输出序列化为JSON
的默认情况是camelcase,而ASP.NET MVC 5
的默认情况是Pascal
请注意,文章中的第一个图像显示的所有属性都是camelcase:
Object { success: true, message: null, data: Array(1) ... }
类似于数据
数组中的项目:genderId
,genderName
等
解决这个问题的一种方法是通过应用camelcase属性名来更新javascript
代码和Knockout
绑定。
例如
或者,您可以选择将Web API配置为返回基于Pacalcased的JSON,例如,在启动中使用下面的代码配置服务
:
services
// ...
.AddJsonOptions(options => {
options.JsonSerializerOptions.PropertyNamingPolicy = null;
})
// ...
我的疑问如下,我必须在第一张图片中显示的属性AddJsonOptions方法无法识别我,表明服务没有该定义取决于.NET Core
版本,这显示了配置json选项的替代方法。我的疑问如下,我必须在第一张图片中显示的属性AddJsonOptions方法无法识别我,表明服务没有该定义取决于.NET Core
版本,这显示了配置json选项的替代方法。