Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 4.0 是否通过foreach访问实体联接结果?_C# 4.0_Entity - Fatal编程技术网

C# 4.0 是否通过foreach访问实体联接结果?

C# 4.0 是否通过foreach访问实体联接结果?,c#-4.0,entity,C# 4.0,Entity,我有2个表,使这个连接工作正常,我可以将它绑定到datagrid视图(在winforms中),但如何访问结果数据 通过foreach(如何访问类似于[0][1]行的数据表) void Testmethod() { 可数结果; 使用(var context=newtestdbentities()) { 结果=(来自context.Table1中的 在context.Table2中加入b a.ID等于b.ID 选择新的{b.Id,b.name}); } } 谢谢大家这与您的要求略有不同,但也可能

我有2个表,使这个连接工作正常,我可以将它绑定到datagrid视图(在winforms中),但如何访问结果数据 通过foreach(如何访问类似于[0][1]行的数据表)

void Testmethod()
{
可数结果;
使用(var context=newtestdbentities())
{
结果=(来自context.Table1中的
在context.Table2中加入b
a.ID等于b.ID
选择新的{b.Id,b.name});
}
} 

谢谢大家

这与您的要求略有不同,但也可能有用

IEnumerable<dynamic> result;
using (var context = new TestDBEntities())
{
    result = (from a in context.Table1
              join b in context.Table2 on a.Id equals b.Id
              select new { b.Id, b.name }).ToList();
}

foreach (dynamic resultEntry in result)
    Console.Out.WriteLine("ID:" + resultEntry.Id + " name: " + resultEntry.name);
i可数结果;
使用(var context=newtestdbentities())
{
结果=(来自context.Table1中的
在a.Id等于b.Id的context.Table2中连接b
选择新的{b.Id,b.name}).ToList();
}
foreach(结果中的动态结果)
Console.Out.WriteLine(“ID:+resultEntry.ID+”名称:+resultEntry.name”);

我希望这足够好;)

这是一个方法,我想返回结果数据var result works in using scope only:)我更改了代码,允许您在using scope之外使用result。你需要将LINQ查询转换成一个列表来保存它的结果,以及一个动态的对象,而不是一个在运行时解决的对象,因此它将知道在使用范围之外的查询字段。谢谢
IEnumerable<dynamic> result;
using (var context = new TestDBEntities())
{
    result = (from a in context.Table1
              join b in context.Table2 on a.Id equals b.Id
              select new { b.Id, b.name }).ToList();
}

foreach (dynamic resultEntry in result)
    Console.Out.WriteLine("ID:" + resultEntry.Id + " name: " + resultEntry.name);