Então aqui está o erro ...
Ocorreu um erro ao salvar o Painel. Sistema.ArgumentOutOfRangeException: O índice estava fora do intervalo. Devemos ser não negativo e menor que o tamanho de a coleção. Nome do parâmetro: index às System.ThrowHelper.ThrowArgumentOutOfRangeException () às System.Collections.Generic.List`1.get_Item (Int32 index) em PanelController.Save (Int32 ID, FormCollection FormValues)
Durante a depuração, verifiquei o parâmetro que estava adicionando ao processo armazenado salvo, e o ID que estava adicionando era 0. Em seguida, quando usou este
oDal.Execute("Lending.uspPanelSave")
Item.PanelId = oDal.Parameters("@PanelId").Value
Para recuperar o ID para devolvê-lo, ele definiu como 1000? Alguém sabe qual é o problema?
Respostas:
1 para resposta № 1Use o SqlServer Profiler (em ferramentas de desempenho) para ver o que é realmente enviado ao SQL Server.
0 para resposta № 2
Parece que não está encontrando um parâmetro de saídachamado @PanelId no seu objeto de comando. O parâmetro foi adicionado e declarado com a direção correta? O parâmetro está declarado corretamente no procedimento armazenado?