Entity framework 具有泛型类型和EF的POCO

Entity framework 具有泛型类型和EF的POCO,entity-framework,generics,types,poco,Entity Framework,Generics,Types,Poco,是否可以使用泛型类型的POCO并首先映射到实体框架代码?我问这个问题的原因是我在context.Products.Add(product)上得到了以下错误:;CreateNewProduct()方法的第行- 未映射类型“CodeFirstNewDBConsole.Product`1[CodeFirstNewDBConsole.ProductDetail]”。检查是否未使用Ignore方法或NotMappeAttribute数据批注明确排除该类型。验证该类型是否定义为类、是否为基元或泛型,以及是否

是否可以使用泛型类型的POCO并首先映射到实体框架代码?我问这个问题的原因是我在context.Products.Add(product)上得到了以下错误:;CreateNewProduct()方法的第行-

未映射类型“CodeFirstNewDBConsole.Product`1[CodeFirstNewDBConsole.ProductDetail]”。检查是否未使用Ignore方法或NotMappeAttribute数据批注明确排除该类型。验证该类型是否定义为类、是否为基元或泛型,以及是否从EntityObject继承

波科

公共类产品
{
公共int Id{get;set;}
公共字符串ProductName{get;set;}
公共T产品详细信息{get;set;}
}
ProductContext

public class ProductContext : DbContext
{
    public DbSet<Product<ProductDetail>> Products { get; set; }
}
公共类ProductContext:DbContext
{
公共数据库集产品{get;set;}
}
产品插页

private static void CreateNewProduct()
    {
        var productDetail = new ProductDetail { ProductDetailName = "Test Product Detail" };

        var product = new Product<ProductDetail>
        {
            ProductName = "Test Product",
            ProductDetails = productDetail
        };

        using (var context = new ProductContext())
        {
            context.Products.Add(product);
            context.SaveChanges();
        }
    }
private static void CreateNewProduct()
{
var productDetail=newproductdetail{ProductDetailName=“测试产品详细信息”};
var产品=新产品
{
ProductName=“测试产品”,
ProductDetails=productDetail
};
使用(var context=new ProductContext())
{
context.Products.Add(产品);
SaveChanges();
}
}

实体框架不支持泛型类。从错误消息中可以清楚地看到: “…验证类型是否定义为类、是否为基元类型或泛型类型以及是否从EntityObject继承。”

private static void CreateNewProduct()
    {
        var productDetail = new ProductDetail { ProductDetailName = "Test Product Detail" };

        var product = new Product<ProductDetail>
        {
            ProductName = "Test Product",
            ProductDetails = productDetail
        };

        using (var context = new ProductContext())
        {
            context.Products.Add(product);
            context.SaveChanges();
        }
    }