【发布时间】:2020-08-16 10:40:36
【问题描述】:
我是 Azure Service Fabric 的新手,在 Pluralsight 上观看了 Ivan Gavryliuk 的“了解 Azure Service Fabric 的编程模型”课程。我一直在关注,可靠服务和 API 中的基本数据模型按照课程中的说明工作。
但是,如果我增加所用数据模型的复杂性,我会遇到错误。
来自 ECommerce.ProductCatelog.Model 的 Product.cs
namespace ECommerce.ProductCatalog.Model
{
public class Product
{
public Guid Id { get; set; }
public string Name { get; set; }
public string Description { get; set; }
public double Price { get; set; }
public int Availability { get; set; }
public Supplier Suppliers { get; set; }
}
public class Supplier
{
public Guid Id { get; set; }
public string Name { get; set; }
}
}
来自 ECommerce.API.Model 的 ApiProduct.cs
public class ApiProduct
{
[JsonProperty("id")]
public Guid Id { get; set; }
[JsonProperty("name")]
public string Name { get; set; }
[JsonProperty("description")]
public string Description { get; set; }
[JsonProperty("price")]
public double Price { get; set; }
[JsonProperty("isAvailable")]
public bool IsAvailable { get; set; }
[JsonProperty("suppliers")]
public ApiSupplier suppliers { get; set; }
}
public class ApiSupplier
{
[JsonProperty("id")]
public Guid Id { get; set; }
[JsonProperty("name")]
public string Name { get; set; }
}
来自 Ecommerce.API.Controlers 的 ProductController.cs
[HttpGet]
public async Task<IEnumerable<ApiProduct>> GetAsync()
{
IEnumerable<Product> allProducts = await _service.GetAllProductsAsync();
return allProducts.Select(p => new ApiProduct
{
Id = p.Id,
Name = p.Name,
Description = p.Description,
Price = p.Price,
IsAvailable = p.Availability > 0,
suppliers = p.Suppliers
});
}
上述块中的最后一行触发了一个智能感知错误: “无法将类型 'ECommerce.ProductCatelog.Model.Supplier' 隐式转换为 'ECommerce.API.Model.Supplier'”
有关如何解决此问题的任何建议欢迎 :)
干杯, 亚当
【问题讨论】:
-
链接到托管课程代码的 GitHub 存储库 - github.com/fgheysels/ServiceFabric.ECommerce/tree/master/src