Subsônico, definir useSPs=“true” não parece funcionar.SPs não estão sendo gerados

StackOverflow https://stackoverflow.com/questions/3253828

  •  16-09-2020
  •  | 
  •  

Pergunta

Estou usando subsônico, sou razoavelmente novo nisso.Hoje é a primeira vez que preciso usar procedimentos armazenados com ele.

Minha linha de provedor no webconfig é a seguinte:

Estou usando dois provedores apontando para dois bancos de dados diferentes, onde o outro não está ligando para os SPs.

Quando eu gero, estou recebendo todas as tabelas e os procedimentos armazenados da classe, mas está vazio!Então, quando eu faço SPs....no código não há classes para exibir.

Alguém sabe o que está acontecendo aqui?

ATUALIZAR:

Se eu definir UseSps="True" em meu outro provedor.isso funciona?

Os bancos de dados estão em servidores completamente diferentes.

Bex

Foi útil?

Solução 2

Certo - para quem tem esse problema ..Eu sei o que está causando isso (pelo menos no meu caso).precisará de uma reescrita do código principal para corrigir.

Se tu vais aqui mostra a fonte de geração do Sps.Vá para a linha 1745

Se eu executar este procedimento no SQL Server, recebo este erro:

Cannot sort a row of size 8098, which is greater than the allowable maximum of 8094.

É porque os procedimentos armazenados no banco de dados que estou usando são absolutamente enormes, então eles são muito longos para a linha quando ela é ordenada.Remover o order by no código principal corrigirá esse erro, mas não sei se é necessário?

Vou enviá-lo como um problema.

Outras dicas

Presumo que você esteja usando a versão 2.X do subsônico, não a 3?

Nesse caso, você precisa informar sua configuração para gerar procs armazenados, algo assim:

 <SubSonicService defaultProvider="blah">
        <providers>
            <clear />
            <add 
 ...
 includeProcedureList="proc1,proc2"

Se você estiver usando a versão 3, você só precisa executar o modelo T4 para procs armazenados.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top