Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/290.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 将字符串值传递给需要SHA1字符串的WSDL API_C#_.net_Razor - Fatal编程技术网

C# 将字符串值传递给需要SHA1字符串的WSDL API

C# 将字符串值传递给需要SHA1字符串的WSDL API,c#,.net,razor,C#,.net,Razor,我是C#net新手,但我使用的是php。我希望达到与此相同的结果 $var = $username.$jpwMobileNo; $pass = sha1(utf8_encode($var )); 因此,我可以将$pass变量传递给接受$pass字符串的API。我如何实现这一点。 我试过这个 var pass = userName + no + time + key; var p = Encoding.UTF8.GetBytes(pass); var x = sha.ComputeHash(p)

我是C#net新手,但我使用的是php。我希望达到与此相同的结果

$var = $username.$jpwMobileNo;
$pass = sha1(utf8_encode($var ));
因此,我可以将$pass变量传递给接受$pass字符串的API。我如何实现这一点。 我试过这个

var pass = userName + no + time + key;
var p = Encoding.UTF8.GetBytes(pass);
var x = sha.ComputeHash(p);
var str = System.Text.Encoding.Default.GetString(x);
var user = new AWsdl.AgencyClient();
var resultAPI = user.GA(userName, no, time, key,str);

但是var str以字节的形式返回。如何将其转换为字符串?您正在使用
编码.GetString
将字节转换为字符串,但这只能用于将某些内容转换回编码为字节的字符串

使用
BitConverter.GetString
方法将字节转换为PHP
sha1
函数返回的相同十六进制字符串:

string str = BitConverter.ToString(x).Replace("-", String.Empty);

我确信变量
str
是一个
字符串。你怎么说它是一个
字节
?我把
var x=sha.ComputeHash
转换回一个字符串是正确的吗?但是API提供程序要求
var str
是一个字符串。这就是我在php
$str=sha1(utf8_encode($ck))中所做的
$resultAPI=$client->GA($str)谢谢!这就是我错过的