Javascript ASP.net Core 2.1中的敲除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

我对Kcnockout Js有一个问题,当他试图返回结果时,他将结果无差别地返回给我,我已经验证了承包商,如果他正在返回我的数据,如下图所示

但是在加载值列表时​​在视图中,它使我意识到它是未定义的,如下图所示

我不知道他为什么给我发这个信息这是我的控制器代码

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选项的替代方法。