Olá Marcelo! Tudo bem?
Pelo que você descreveu e pela imagem que você enviou, parece que o problema está realmente relacionado ao esquema da sua view no SQL Server. Quando uma view (ou tabela) não está no esquema padrão dbo
, você precisa especificar o esquema ao referenciá-la no seu código.
No seu DbContext, você deve garantir que o mapeamento para a view esteja correto, incluindo o nome do esquema. Por exemplo, se sua view se chama vwPessoaControlID
e está sob o esquema Pessoa
, você deve configurar seu DbContext assim:
modelBuilder.Entity<SeuModelo>().ToTable("vwPessoaControlID", schema: "Pessoa");
Certifique-se de substituir SeuModelo
pelo nome da classe de modelo que representa a view em seu projeto.
Além disso, na sua query, ao referenciar a view, você deve usar o nome completo (incluindo o esquema) se não estiver configurado no DbContext como mostrado acima. Por exemplo:
var pessoa = _context.Pessoas.FromSqlRaw("SELECT * FROM Pessoa.vwPessoaControlID WHERE ID = {0}", id).FirstOrDefault();
Isso deve resolver o problema de acesso à view com um esquema diferente de dbo
. Verifique também se todas as permissões necessárias estão configuradas no SQL Server para permitir que seu aplicativo acesse a view.
Espero ter ajudado e bons estudos!
Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.