将实体框架与存储过程和未命名列一起使用

时间:2011-09-30 20:55:18

标签: entity-framework stored-procedures .net-4.0 entity-framework-4

我正在尝试使用存储过程中的未命名列的实体框架。

比如说以下SP:

CREATE PROCEDURE [dbo].[GetUsers]
AS
BEGIN

    SELECT 
        Username, 
        Firstname + ' ' + Lastname
    FROM
        dbo.users

END
GO

通常,如果我在实体框架中创建映射,则在创建的复杂对象中有2列(用户名和列1)。

这里的问题是我尝试使用POCO而不是自动生成的复杂对象。

使用命名列,反射可以完成工作。但是当我包含连接列时它没有映射数据。是否可以以任何方式将其映射到现有的POCO [具有用户名和全名作为现有属性] ? (属性,向导或其他什么?)

1 个答案:

答案 0 :(得分:0)

如果您使用正确的模板,则自动生成的对象仍然是POCO,因此您可以将过程映射为函数导入并使用复杂类型。否则使用@marc_s建议的内容并给出每个计算列别名:

SELECT 
    Username, 
    Firstname + ' ' + Lastname AS FullName
FROM
    dbo.users