【发布时间】:2012-02-08 19:06:10
【问题描述】:
我只是第一次接触到实体框架而不是简单的例子。
我正在使用模型优先方法并使用 LINQ-to-Entities 查询数据源。
我创建了一个实体模型,我将其作为 OData 服务公开给我不控制架构的数据库。在我的模型中,我有两个实体,它们基于该数据库中的两个视图。我已经在两个实体之间创建了关联。两个视图都有一个同名的列。
我收到错误:
不明确的列名“列名”。由于绑定错误,无法使用视图或函数“viewname”。
如果我自己编写 SQL 语句,我会使用别名限定其中一个列名以防止出现此问题。 EF 显然没有这样做。除了改变视图,我该如何解决这个问题? (我不能这样做)我认为这确实与将这些实体映射到视图而不是映射到实际表有关。
【问题讨论】:
-
请先说明您使用的是设计器模型还是代码。如果您使用的是设计器,只需将两个视图拖到设计图面上并添加关系即可轻松解决。在代码中,它需要更多的工作。另外,您是通过 Entity SQL 查询还是使用 LINQ to Entities?
-
@jessehouwing:我还没有机会为此收集代码。我希望有人可能会偶然发现它并产生“哦,我以前遇到过这个问题”的回应。我刚刚为这个问题添加了一些额外的信息。我正在使用模型优先方法,并且(如标题中所述)我正在使用 LINQ to Entities。
-
@dotnetengineer,我很抱歉,但我以前没有遇到过这个问题,想想看,我们使用的实体使用了同名的列,没有任何问题。你能显示视图定义(SQL)吗?或者至少是
select [column names here]?
标签: linq entity-framework-4 ado.net