这段代码里有拳击吗?

时间:2013-11-18 06:16:37

标签: c# winforms linq entity-framework

我有2个解决方案的项目(通过使用EntityFramework),其中一个我有这个代码:

   try
        {
            var context = new SabzNegar01Entities1();

            int count = 0;

            count = (from p in context.tbl_Stock
                     select p).Count();

            if (count != 0)
            {
                var objectList = (from p in context.tbl_Stock
                                  select p).ToList();


            }
        }
        catch (Exception ex)
        {
            MessageBox.Show(ex.Message, "Error in Reading  Stocks Data");
        }

在这一部分:

 var objectList = (from p in context.tbl_Stock select p).ToList();

是否有任何拳击事件?如果是,那是另一种方式,因为我不想要拳击? 我无法在另一个解决方案中看到tbl_Stock然后我无法使用:

 IList<tbl_Stock> objectList = (from p in context.tbl_Stock  select p).ToList();

我如何将结果发送到另一个解决方案? 我可以将此列表存储在DataTable或DataSet中吗?

2 个答案:

答案 0 :(得分:4)

在那里使用varIList<tbl_Stock>几乎没有区别。并且使用var肯定不会导致拳击发生。

我在您的代码中看不到任何装箱,但您可以尝试将其反编译为IL并查找box / unbox指令。

答案 1 :(得分:0)

LINQ是IEnumerable类型的变量,objectList是IList类型的变量。

var&amp; IList在这里是相同的。

编译从右到左,var最终将被IList替换。