Получение только первого символа в выходном параметре в C#C#

Место общения программистов C#
Ответить
Anonymous
 Получение только первого символа в выходном параметре в C#

Сообщение Anonymous »

Я определил выходной параметр, как показано ниже: < /p>

c#: < /p>

scom.Parameters.Add("@User_ID",SqlDbType.VarChar,8).Direction = ParameterDirection.Output ;
< /code>

sql: < /p>

@User_ID varchar(8) output
< /code>

Я получаю полную строку при выполнении процедуры в SQL Server, но получаю только первый символ в C#. Я много искал и гарантировал, что размер определяется как в C#, так и в SQL. Даже я попытался с характером фиксированной длины (Char (8)), но все же получил только первый персонаж в C#. Пожалуйста, дайте мне знать, в чем проблема.public bool CheckPhone(string phoneNumber)
{
SqlConnection myconn=new SqlConnection(connectionString);
try
{
myconn.Open();
SqlCommand scom = new SqlCommand("AuthenticatePhone", myconn);
scom.CommandType = CommandType.StoredProcedure;
scom.Parameters.Add("@phoneNumber", SqlDbType.BigInt).Value = Convert.ToInt64(phoneNumber);
scom.Parameters.Add("@User_ID", SqlDbType.Char, 8).Direction = ParameterDirection.Output;

scom.Parameters.Add("@User_Name", SqlDbType.Char, 120).Direction = ParameterDirection.Output;

scom.ExecuteNonQuery();
if (scom.Parameters["@User_Name"] == null)
{
return false;
}
else
{
UserID = (string)scom.Parameters["@User_ID"].Value;//.ToString();
UserName = (string)scom.Parameters["@User_Name"].Value;//.ToString();
myconn.Close();
return true;
}
}
catch (Exception e)
{
string error = e.InnerException + e.Message;
}
finally
{
myconn.Close();
}

return false;
}
< /code>

sql: < /strong> < /p>

Create procedure dbo.AuthenticatePhone

@phoneNumber numeric(11,0) ,
@User_ID varchar(8) output ,
@User_Name varchar(120) output
as
begin

Select @User_ID = convert(varchar(8),[User_ID]) ,
@User_Name = [User_Name]
from dbo.NRE_Users
where PhoneNumber = @phoneNumber
;

print @User_ID
print @User_Name

end


Подробнее здесь: https://stackoverflow.com/questions/223 ... in-c-sharp
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»