executar procedimento armazenado na entidade Framework Core sem esperar que o mapa dbset
Estou trabalhando no .NET CORE, núcleo do Entity Framework. Tenho um procedimento armazenado que preciso executar da classe .NET. Meu procedimento armazenado leva o número de 'Contexto' e não sei como lidar com isso, embora eu tenha o dataView, que é a exceção final.
Eu sou capaz de usar meu dataView em vez da classe context.dataModel, implementação atual (Context.Claims.FromSql)
exibição de dadospublic class ClaimDataView
{
public Guid ClaimId { get; set; }
public int IdNum { get; set; }
public string Value { get; set; }
public DateTime ExpirationDate { get; set; }
public ClaimAttributionActions Action { get; set; }
public bool ActiveStateForRole { get; set; }
}
chamada de procedimento armazenadopublic Guid UserId { get; set; }
public Guid ClientId { get; set; }
public Guid ConsultationId { get; set; }
var userParam = new SqlParameter("@UserVal", UserId);
var clientParam = new SqlParameter("@ClientVal", ConsultationId);
var consultationParam = new SqlParameter("@ConsultationVal", ConsultationId);
//**************need help in following line
var query = Context.Claims.FromSql("EXECUTE dbo.ListUserClaims @userId=@UserVal, @clientId=@ClientVal, @consultationId=@ConsultationVal"
, userParam, clientParam, consultationParam);
nova atualizaçãoClasse moduleContext protected override void OnModelCreating(ModelBuilder modelBuilder)
{
//other models....
modelBuilder.Query<ClaimDataView>();
}
Procedimento armazenado executando a partir de var query = Context.Query<UserDataView>().FromSql("EXECUTE dbo.ListUserClaims @userId=@UserVal, @clientId=@ClientVal, @consultationId=@ConsultationVal"
, userParam, clientParam, consultationParam);
erroSystem.InvalidOperationException: Cannot create a DbSet for 'UserDataView' because this type is not included in the model for the context.
at Microsoft.EntityFrameworkCore.Internal.InternalDbQuery`1.get_EntityType()