Este artigo é um artigo espelhado de tradução automática, por favor clique aqui para ir para o artigo original.

Vista: 20045|Resposta: 0

[Fonte] String[3]: a propriedade Size tem tamanho inválido de 0.

[Copiar link]
Publicado em 26/10/2015 09:39:40 | | |
Ao chamar um procedimento armazenado em um programa C#, uma exceção estranha String[3]: a propriedade Size tem tamanho inválido de 0.

O procedimento armazenado que apresenta esse problema é caracterizado pela presença de parâmetros out do tipo varchar ou nvarchar

A definição desse parâmetro no momento da chamada é semelhante a
SqlParameter para = new SqlParameter("@paraname", DBType.String);


Solução alternativa: O parâmetro out deve ter um comprimento especificado, então deve ser inicializado assim:
SqlParameter para = new SqlParameter("@paraname", DBType.String, size);

  1. DBHelper db = new DBHelper();
  2.             SqlParameter[] param = new SqlParameter[5];
  3.             param[0] = new SqlParameter("ID", SqlDbType.Int);
  4.             param[0].Direction = ParameterDirection.Output;
  5.             param[1] = new SqlParameter("UserID", userid);
  6.             param[2] = new SqlParameter("UserName", SqlDbType.NVarChar, 50);
  7.             param[2].Direction = ParameterDirection.Output;
  8.             param[3] = new SqlParameter("Password", pass);
  9.             param[4] = new SqlParameter("Result", SqlDbType.Int);
  10.             param[4].Direction = ParameterDirection.Output;

  11.             var spc = db.Crm_ExecuteNonQueryReturns("pUserLogin",param);
Copiar código






Anterior:Compare o desempenho da chave primária do campo Guid usando o campo auto-incremental na biblioteca
Próximo:Uma pergunta sobre serialização e desserialização
Disclaimer:
Todo software, material de programação ou artigos publicados pela Code Farmer Network são apenas para fins de aprendizado e pesquisa; O conteúdo acima não deve ser usado para fins comerciais ou ilegais, caso contrário, os usuários terão todas as consequências. As informações deste site vêm da Internet, e disputas de direitos autorais não têm nada a ver com este site. Você deve deletar completamente o conteúdo acima do seu computador em até 24 horas após o download. Se você gosta do programa, por favor, apoie um software genuíno, compre o registro e obtenha serviços genuínos melhores. Se houver qualquer infração, por favor, entre em contato conosco por e-mail.

Mail To:help@itsvse.com