1

我们正在使用 EF6.1.1 我有一个数据库视图。该视图具有“ID”列并且不可为空。我在 edmx 设计器上添加了该视图。我注意到设计器中“ID”列前面的钥匙图标。当我右键单击设计器上的“ID”列时,我还注意到选择了“Entity Key”选项但是当 T4 重新生成实体时,我没有看到相应的实体在 ID 列上有“Key”属性。所以我得到编译时警告

警告 4 错误 6002:表/视图“XXXXXX”没有定义主键。已推断出密钥,并将定义创建为只读表/视图。

4

1 回答 1

0

在您的 SqlServer 中:

CREATE FUNCTION FunctionName() RETURNS TABLE AS RETURN (SELECT * FROM [dbo].[Viewname])

在您的应用程序中,从数据库升级您的模型并导入函数FunctionName

在您的控制器中:

var some = db.**FunctionName()**.SingleOrDefault(c => c.field == someparam);
于 2014-12-15T17:40:46.947 回答