当前位置:Gxlcms > 数据库问题 > Entity Framework4.0 (一)概述(EF4 的Database First方法)

Entity Framework4.0 (一)概述(EF4 的Database First方法)

时间:2021-07-01 10:21:17 帮助过:5人阅读

方法一:我们使用循环遍历查询结果的集合元素,然后添加到控制中。 //this.lboxCategory.Items.Clear(); //using (NorthwindEntities context = new NorthwindEntities()) //{ // var categories = from category in context.Categories // select new { category.CategoryID,category.CategoryName }; // foreach (var c in categories) // { // this.lboxCategory.Items.Add(c.CategoryName); // } //} // 方法二:该方法是指定数据源的方式。不须要用 this.lboxCategory.Items.Clear(); // 来清理上次展示的结果。当再次指定数据源以后,控制显示的即是最新的数据信息。 using (NorthwindEntities context = new NorthwindEntities()) { var categories = from category in context.Categories select new { category.CategoryID, category.CategoryName }; // 注意:给控件指定数据源的时候,对DataSource的赋值语句要在DisplayMember和ValueMember赋值之后, // 否则,DisplayMember和ValueMember的赋值不生效。 this.lboxCategory.DisplayMember = "CategoryName"; this.lboxCategory.ValueMember = "CategoryID"; this.lboxCategory.DataSource = categories; }

lbCategory的select index change事件响应代码如下:

// 方法一:我们使用循环遍历查询结果的集合元素,然后添加到控制中。
//this.lboxProduct.Items.Clear();
//if (this.lboxCategory.SelectedItem != null)
//{
//    string categoryName = this.lboxCategory.SelectedItem.ToString();
// 这次直接使用CategoryName作筛选条件,需要使用连接(join),因为Product中只包含有CategoryID,而没有CategoryName。
//    using (NorthwindEntities context = new NorthwindEntities())
//    {
//        var products = from product in context.Products
//                       join category in context.Categories on product.CategoryID equals category.CategoryID
//                       where category.CategoryName == categoryName
//                       select new { product.ProductName };

//        foreach (var p in products)
//        {
//            this.lboxProduct.Items.Add(p.ProductName);
//        }
//    }
//}

// 方法二:该方法是指定数据源的方式。不须要用 this.lboxProduct.Items.Clear();
            if (this.lboxCategory.SelectedValue != null)
            {
                // 得到类别ID号
                int  categoryID = Convert.ToInt32(this.lboxCategory.SelectedValue.ToString());

                // 这次直接使用CategoryID作筛选条件,不需要使用连接(join),因为Product中包含有CategoryID。
                using (NorthwindEntities context = new NorthwindEntities())
                {
                    var products = from product in context.Products
                                   where product.CategoryID == categoryID
                                   select new { product.ProductName };

                    // 注意:给控制指定数据源的时候,对DataSource的赋值语句要在DisplayMember和ValueMember赋值之后,
// 否则,DisplayMember和ValueMember的赋值不生效。
                    this.lboxProduct.DisplayMember = "ProductName";
                    this.lboxProduct.DataSource = products;
                }
            }

 

Entity Framework4.0 (一)概述(EF4 的Database First方法)

标签:

人气教程排行