Как выглядит ваш список параметров хранимой процедуры в T-SQL ??
Позвольте мне угадать - у вас, вероятно, есть что-то вроде
CREATE PROCEDURE dbo.YourHtmlRetrievelProc
...
@HtmlEmail VARCHAR OUTUPT
или что-то в этом роде.
Любой varchar
, определенный как параметр без , в котором длина по умолчанию равна 1 символ в длину - скорее всего, поэтому вы получаете только 1 символ назад ... .
Вам необходимо указать длину:
@HtmlEmail VARCHAR(2000) OUTUPT
или даже:
@HtmlEmail VARCHAR(MAX) OUTUPT
По той же причине я бы также изменил ваш код C # с:
SqlParameter HTMLParam = new SqlParameter("@HtmlEmail","");
до:
SqlParameter HTMLParam = new SqlParameter("@HtmlEmail", SqlDbType.VarChar, 2000);
Необходимо убедиться, что вы используете ту же длину, которая определена в заголовке хранимой процедуры. Используйте Int.MaxValue
, если вы определили VARCHAR(MAX)
как параметр в T-SQL