Сделать функцию - C#

Узнай цену своей работы

Формулировка задачи:

            //Первый аккаунт (авторизация)
            WebClient client = new WebClient();
            string url1 = ("https://oauth.vk.com/token?grant_type=password&scope=offline&client_id=2274003&client_secret=hHbZxrka2uZ6jB1inYsH&username=" + log1 + "&password=" + pass1);
            var source1 = client.DownloadString(url1);
            JObject parse1 = Newtonsoft.Json.Linq.JObject.Parse(source1);
            var token1 = parse1.SelectToken("access_token").ToString();
 
            //Второй аккаунт (авторизация)
            string url2 = ("https://oauth.vk.com/token?grant_type=password&scope=offline&client_id=3140623&client_secret=VeWdmVclDCtn6ihuP1nt&username=" + log2 + "&password=" + pass2);
            var source2 = client.DownloadString(url2);
            JObject parse2 = Newtonsoft.Json.Linq.JObject.Parse(source2);
            var token2 = parse2.SelectToken("access_token").ToString();
 
            //Третий аккаунт (авторизация)
            string url3 = ("https://oauth.vk.com/token?grant_type=password&scope=offline&client_id=3140623&client_secret=VeWdmVclDCtn6ihuP1nt&username=" + log3 + "&password=" + pass3);
            var source3 = client.DownloadString(url3);
            JObject parse3 = Newtonsoft.Json.Linq.JObject.Parse(source3);
            var token3 = parse3.SelectToken("access_token").ToString();
Как сделать чтобы выполнялся данный код, но не делая одно и тоже, потому-что изменения только в url1, url2, url3, а остальной код не изменный

Решение задачи: «Сделать функцию»

textual
Листинг программы
string url1 = "";
string url2 = "";
string url3 = "";
 
var token1 = GetToken(url1, "access_token");
var token2 = GetToken(url2, "access_token");
var token3 = GetToken(url3, "access_token");
 
var token4 = GetToken(url1, "user_id");
var token5 = GetToken(url2, "user_id");
var token6 = GetToken(url3, "user_id");
 
string GetToken(string url, string tok)
{
    using (WebClient client = new WebClient())
    {
        try
        {
            Source = client.DownloadString(url);
            JObject Parse = Newtonsoft.Json.Linq.JObject.Parse(Source);
            return Parse?.SelectToken(tok).ToString();
        }
        catch (Exception exc)
        {
            // handle exception
            return null;
        }
    }
}

Оцени полезность:

14   голосов , оценка 3.786 из 5
Похожие ответы