Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/327.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
PHP服务调用转换为C#_C#_Php_Model View Controller_Service - Fatal编程技术网

PHP服务调用转换为C#

PHP服务调用转换为C#,c#,php,model-view-controller,service,C#,Php,Model View Controller,Service,我收到了这个基于PHP的API,但我需要将它转换成C。这只是第一种方法,这是我的结果。 我似乎错过了很多。这个c#方法会像PHP方法那样工作吗 PHP: C# 我可以假设getTextBetweenTags()方法列在其他地方吗?您需要为while循环添加一个条件。假设它是whilecounter谢谢,是的,getTextBetweenTags()方法是我需要从PHP更改为C的另一种方法。我已经更改了while循环,但我仍然觉得我编写的C#方法无法准确地生成用PHP编写的内容@Takaria假设

我收到了这个基于PHP的API,但我需要将它转换成C。这只是第一种方法,这是我的结果。 我似乎错过了很多。这个c#方法会像PHP方法那样工作吗

PHP:

C#


我可以假设
getTextBetweenTags()
方法列在其他地方吗?您需要为while循环添加一个条件。假设它是while
counter谢谢,是的,
getTextBetweenTags()
方法是我需要从PHP更改为C的另一种方法。我已经更改了while循环,但我仍然觉得我编写的C#方法无法准确地生成用PHP编写的内容@Takaria假设其他“缺失”变量在别处声明,我觉得没问题。
// Call SVP Service
function callSVPService($service, $arg, $raw_data = false) {
    global $entry_point;

    $count_attempts = 3;
    $token_error_codes = array(2004, 2005, 2006);
    $counter = 0;
    // Make a attempts to call a SVP API service.
    // With this we can automatically generate a new token if the token is empty,
    // the token is not valid or the validation period of the token is expired.
    while(true) {
        $counter++;
        $token_response = getToken();
        // If token error occurs - exit calling service.
        if($token_response['error_code']) {
            return array('error_code' => $token_response['error_code'], 'response' => '');
        }
        $token = $token_response['token'];
        $arg['token'] = $token;

        $response = callSVP_API_Service($service, $arg);
        $result = getTextBetweenTags($response, 'result', true);

        if(!$result) {
            if(!$raw_data) {
                return array('error_code' => -1, 'response' => $response);
            }
            else if(!$response) {
                return array('error_code' => -1, 'response' => 'Empty server response');
            }
            else {
                $error_code = 0;
            }
        }
        else if($result == 'ERROR') {
            $error_code = getTextBetweenTags($response, 'code', true);
        }
        else if($result == 'OK') {
            $error_code = 0;
        }

        if(!$error_code) {
            return array('error_code' => 0, 'response' => $response);
        }
        else if(in_array($error_code, $token_error_codes)) {
            // The service response contains a token error. Try to generate a new token.
            saveToken(0);
        }

        if($counter >= $count_attempts) {
            return array('error_code' => $error_code, 'response' => $response);
        }
    }
}
public dynamic callSVPService(dynamic service, dynamic arg, dynamic raw_data)
        {
            var countAttempt = 3;
            int[] tokenErrorCodes;
            tokenErrorCodes = new int[2004];
            tokenErrorCodes = new int[2005];
            tokenErrorCodes = new int[2006];
            var counter = 0;

            while (true)
            {
                counter++;
                var tokenResponse = getToken();
                var token = tokenResponse["token"];

                var response = callSVPAPIService(service, arg);
                var result = getTextBetweenTags(response, "result", true);

                return result;
            }
        }