2016-07-05 16 views
24

Tôi vừa đổi chỗ dự án của mình từ ASP .Net Core 1.0.0-rc2-final thành 1.0.0. Trang web và ứng dụng của chúng tôi đã ngừng hoạt động vì cách viết hoa các thuộc tính JSON. Ví dụ: dòng JavaScript này không thành côngThuộc tính JSON hiện thấp hơn khi hoán đổi từ ASP .Net Core 1.0.0-rc2-final thành 1.0.0

for (var i = 0; i < collection.Items.length; i++){ 

vì bây giờ bộ điều khiển gọi mảng "mục" thay vì "Mục". Tôi đã không thực hiện thay đổi nào ngoài việc cài đặt các gói cập nhật và chỉnh sửa tệp project.json. Tôi đã không thay đổi các tập tin mô hình C# mà vẫn tận dụng tài sản của họ.

Tại sao bộ điều khiển lõi ASP.Net bắt đầu trả về JSON với các thuộc tính có vỏ bọc thấp hơn? Làm thế nào để tôi quay trở lại với họ để tôn vinh trường hợp tên thuộc tính từ mô hình?

+0

xem https://github.com/aspnet/Announcements/issues/194 –

Trả lời

49

MVC tại serializes JSON với tên trường hợp lạc đà theo mặc định

Sử dụng mã này để tránh lạc đà tên trường hợp theo mặc định

services.AddMvc() 
     .AddJsonOptions(options => options.SerializerSettings.ContractResolver = new DefaultContractResolver()); 

Nguồn: https://github.com/aspnet/Announcements/issues/194

+0

netcore2: using Newtonsoft.Json.Serialization; –

4

xem thông báo về vấn đề này ở đây https://github.com/aspnet/Announcements/issues/194

bạn có thể thay đổi hành vi như thế này:

services 
    .AddMvc() 
    .AddJsonOptions(options => options.SerializerSettings.ContractResolver = new DefaultContractResolver()); 
Các vấn đề liên quan