このコードを実行すると、データが表示されず、空白の画面が表示されます。クリックすると空白のデータ"in other formats: json"
が返されます。"{ }"
ただし、実際にはデータが含まれています。クリック"in other formats: xml"
すると、完全なデータが返されます。
では、XML は機能しているのに、HTML と JSON では空白の画面が表示されるのはなぜですか?
[Route("customers", "GET")]
[Route("customers/{Id}", "GET")]
[Route("customers/page/{Page}", "GET")]
[Route("customers/page/{Page}/size/{Size}", "GET")]
[Route("customers/{Id}/orders", "GET")]
[Route("customers/{Id}/orders/page/{Page}", "GET")]
[Route("customers/{Id}/orders/page/{Page}/size/{Size}", "GET")]
public class Customers {
public Customers() { Page = 1; Size = 20; }
public string Id { get; set; }
public int Page { get; set; }
public int Size { get; set; }
}
public class CustomersResponse {
public IList<Customer> Customers;
public int Pages;
}
public class CustomerDetailResponse {
public Customer Customer;
public IList<Order> Orders;
public int Pages;
}
public class CustomersService : BaseService {
public ICustomersManager CustomersManager { get; set; }
public IOrdersManager OrdersManager { get; set; }
public IValidator<Customers> Validator { get; set; }
public object Get(Customers req) {
var result = Validator.Validate(req);
if(!result.IsValid) return result.ToResponseDto();
if (req.Id == null) {
return new CustomersResponse {
Customers = CustomersManager.GetCustomers(req),
Pages = CustomersManager.GetCustomersPageCount(req) };
}
else {
return new CustomerDetailResponse {
Customer = CustomersManager.GetCustomer(req),
Orders = OrdersManager.GetOrders(req),
Pages = OrdersManager.GetOrdersPageCount(req) };
}
}
}