【发布时间】:2014-04-30 11:33:27
【问题描述】:
我使用 Entity Framework 6 创建了具有以下模型的 Code First 数据库。
public class CarOwner
{
public int Id { get; set; }
public virtual ICollection<Car> Cars { get; set; }
}
public class Car
{
public int Id { get; set; }
public string Name { get; set; }
public int CarOwnerId { get; set; }
public virtual CarOwner CarOwner { get; set; }
public virtual CarImage CarImage { get; set; }
}
public class CarImage
{
public int Id { get; set; }
public int CarId { get; set; }
public byte[] Image { get; set; }
}
使用 Visual Studio 2012,我已经自动生成了一个“带有操作的 Web API 2 OData 控制器,使用实体框架”。 此控制器按预期工作,我在项目的这一部分没有错误。
我想在客户端应用程序中使用服务引用来执行以下操作:
var img = new CarImgage {
Image = .....
};
var car = new Car {
Name = "Ford Fiesta",
CarImage = img
};
var cars = new Collection<Car>();
cars.Add(car);
var owner = new CarOwner { Cars = cars }:
我已尝试按照本指南添加新实体,但无济于事:http://www.asp.net/web-api/overview/odata-support-in-aspnet-web-api/calling-an-odata-service-from-a-net-client
我知道可以将“所有者”对象发布到 Web API,因为我可以使用 HttpClient 来做到这一点。
如果确实有可能,我想知道我该怎么做。
【问题讨论】:
标签: c# asp.net entity-framework ef-code-first odata