繁体   English   中英

C#-实体框架插入

[英]C# - Entity Framework inserting

我有两个表Category和Product,我想将产品插入类别。 这些表之间的表关系是zeor或1。

类别表:

CID : integer,
CategoryName : varchar,

产品表:

CID: integer, // foreign key to category table.
ProductName: varchar,
UnitsInstock: integer,

如何编写一个简单查询以将产品插入ProductTable? 如何处理外键关键情况? 如果categoryid不存在,则不应插入产品。

我真的很感谢任何帮助。

通常,产品的类别是多对一的,但我建议您首先研究Linq to Sql的基础知识:

http://msdn.microsoft.com/en-us/library/bb425822.aspx

Linq到SQL 101

了解实体框架

一种方法可能是这种方法:

int categoryIdOfNewProduct = 123;
using (var context = new MyContext())
{
    bool categoryExists = context.Categories
        .Any(c => c.Id == categoryIdOfNewProduct);

    if (categoryExists)
    {
        var newProduct = new Product
        {
            Name = "New Product",
            CategoryId = categoryIdOfNewProduct,
            // other properties
        };

        context.Products.Add(newProduct); // EF 4.1
        context.SaveChanges();
    }
    else
    {
        //Perhaps some message to user that category doesn't exist? Or Log entry?
    }
}

假定您在Product实体上具有外键属性CategoryId 如果您没有,请指定更多详细信息。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM