忽略除EF Core中的存储过程之外的类属性

时间:2016-12-29 06:14:30

标签: entity-framework entity-framework-core

.NET Core 1.1.0,EF Core 1.1.0。我正在从我的数据库查询一些东西,以便委托存储过程更有效。我希望返回一些不属于我的标准类的额外内容,所以until ad-hoc return types are supported我已经将这些额外的属性添加到我的基类中。但问题是EF现在希望在所有其他调用期间为每个属性提供列。

如果我使用以下方法配置这些附加属性:

entity.Ignore(p => p.PropertyName);

从存储过程中拉取属性时会被忽略。我不知道有什么别的办法。

如何从存储过程中返回这些额外属性,但在其他时间忽略它们?

我正在运行这样的查询(docs):

var popular = await _context.Posts
    .FromSql("EXEC usp_Post_Popular {0}, {1}", start, popCount)
    .ToListAsync();

1 个答案:

答案 0 :(得分:0)

我能够通过创建一个仅用于返回这些过程结果的新类来解决这个问题。我在类的上下文配置中创建了DbSet,并在那些上调用了.FromSql()OnModelCreating()中无需配置;我没有添加任何功能。