Tôi hiện đang tạo một .NET C# API. Tôi có nhiều lớp học, và một số trong số đó phải được chuyển qua một dịch vụ REST
là JSON
. Ví dụ, tôi có thể có một đối tượng tài khoản với rất nhiều doanh nghiệp meta-data:Tự động tạo các lớp DataContract từ các lớp đối tượng kinh doanh
public class Account
{
public ComplicatedClass SomeProperty { get; set; }
public string SomeOtherProperty { get; set; }
}
Có rất nhiều lớp học, và nhiều hơn nữa được lồng nhau (như chứng minh bằng tài sản ComplicatedClass
loại). Để tránh làm ngập này kinh doanh-đối tượng với [DataMember]
, vv Các thuộc tính đó sẽ làm cho lớp này một mớ hỗn độn, tôi muốn thực hiện một DTO
cho JSON
:
public class AccountDTOForJSON
{
[DataMember(Name="someProperty")]
public ComplicatedClassDTOForJson SomeProperty { get; set; }
[DataMember(Name="someOtherProperty")]
public string SomeOtherProperty { get; set; }
}
Vấn đề của tôi là, có dường như không có bất kỳ công cụ (mà tôi có thể tìm thấy) để tự động tạo các lớp học DataContract
này và cũng cung cấp mã cho các thuộc tính ánh xạ qua lại.
Tôi có thể, tất nhiên, làm tất cả công việc này theo cách thủ công (trường hợp xấu nhất) hoặc cuộn công cụ của riêng tôi để tạo/bản đồ (trường hợp xấu thứ hai). Nhưng, tôi muốn biết đầu tiên nếu đã có một công cụ để làm điều này loại mà tôi có thể sử dụng để tiết kiệm thời gian của mình.
Xin cảm ơn! Tôi rất vui vì tôi không phải là người duy nhất gặp phải điều này .. Tôi cũng không thể tìm thấy bất cứ điều gì. Tôi đã tìm thấy AutoMapper mà bạn đã nói, nhưng tôi cảm thấy như tôi phải cuộn máy phát điện, tôi cũng có thể cuộn người lập bản đồ của riêng tôi nữa .. Nó rất kỳ lạ không ai chạy vào điều này được nêu ra .. – automaton
có nó sẽ được mát mẻ với một công cụ như trình phân tích cú pháp json trực tuyến http://json.parser.online.fr/ nếu nó có thể hiển thị mã C# datacontract cũng - Tôi đã sử dụng trình phân tích cú pháp json trực tuyến để giúp tôi thực hiện tác vụ tạo DataMembers thủ công - công việc tẻ nhạt và có thể tạo một trình phân tích cú pháp đơn giản – serup