Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.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
LINQ选择实体引用';谁的推荐信?_Linq_Entity Framework_Select - Fatal编程技术网

LINQ选择实体引用';谁的推荐信?

LINQ选择实体引用';谁的推荐信?,linq,entity-framework,select,Linq,Entity Framework,Select,我在SQLExpress数据库中有一个电信交换的三实体层次结构,我正在使用实体框架对其运行一些LINQ查询 交换位于子区域中,该子区域位于区域中。显然,我在区域关系中也有一个隐式的交换 (Exchange) *...1 (SubRegion) *...1 (Region) *.....................1 有时,用户希望看到某个区域或子区域中的所有交换。当我使用下面的LINQ查询时,我得到一个异常 Data.Region region = regionCom

我在SQLExpress数据库中有一个电信交换的三实体层次结构,我正在使用实体框架对其运行一些LINQ查询

交换
位于
子区域
中,该子区域位于
区域
中。显然,我在
区域
关系中也有一个隐式的
交换

(Exchange) *...1 (SubRegion) *...1 (Region)
           *.....................1
有时,用户希望看到某个区域或子区域中的所有交换。当我使用下面的LINQ查询时,我得到一个异常

Data.Region region = regionComboBox.SelectedItem as Data.Region;

var esas = from esa in JITScheduleContainer.Exchanges
    where esa.SubRegion.Region == region
    select esa;

exchangeComboBox.Items.AddRange(esas.ToArray());
例外情况:

无法创建的常量值 键入“CpasJitScheduler.Data.Region”。 只有基元类型('如Int32, 中支持字符串和Guid') 这个背景


EF模型中是否有我需要执行的操作或引用父对象的其他方式?

我忘记了可以使用
int Id
字段进行比较。结果LINQ语句:

Data.Region region = regionComboBox.SelectedItem as Data.Region;

var esas = from esa in Container.Exchanges
           where esa.SubRegion.Region.Id == region.Id
           select esa;

exchangeComboBox.Items.AddRange(esas.ToArray());

我忘了我可以使用
intid
字段进行比较。结果LINQ语句:

Data.Region region = regionComboBox.SelectedItem as Data.Region;

var esas = from esa in Container.Exchanges
           where esa.SubRegion.Region.Id == region.Id
           select esa;

exchangeComboBox.Items.AddRange(esas.ToArray());