2010-11-11 64 views
1

我有一个表描述为LinqToSql加入有一张桌子和

CREATE TABLE [dbo].[Project](
[id] [int] IDENTITY(1,1) NOT NULL, 
[WRSA_ID] [varchar](9) NOT NULL, 
[Administrator] [varchar](5) NOT NULL 

视图和描述为

CREATE VIEW [dbo].[ProjectView] 
AS 
SELECT  Project_ID, Project_Name 
FROM   WRSA.dbo.projects 

在项目的WRSA_ID实际上是PROJECT_ID的ProjectView一个外键,但一个视图显然,因为表引用了一个视图,我不能在表上放置一个外键约束。 在UI中我有两个实体Project和ProjectView,但由于缺少外键,它们之间没有物理链接。

我想选择在WRSA_ID/Project_ID或Project_Name或Administrator中找到搜索字符串的所有项目。我怎么做这是LinqToSql?

回答

0

我相信你可以在你的.DBML中包含表和视图,然后在两者之间手动添加一个关系。即使你不能,这也不会阻止你查询表格,就好像它们已经加入一样。你只需要添加一个Linq'join',告诉Linq应该如何将这些表连接在一起。类似这样的:

from project in Project 
join projectView in ProjectView on project.WRSA_ID equals projectView.Project_ID 
where... 
select...