GrabiCraft Ответов: 1

Проблемы с downloadstring в C#


Так что я не совсем понимаю, почему это показывает мне, что есть доступное обновление.
Сохраняет ли функция DownloadString результат постоянно, чтобы при повторном выполнении программы результат оставался прежним, даже если ответ изменился? Если да, просто ответьте "да".
Если нет, пожалуйста, помогите мне!

var Webpagestring01 = string.Empty;
            using (var web = new System.Net.WebClient())
                Webpagestring01 = web.DownloadString("https://www.dropbox.com/s/yqig5di1smlkjkl/update.txt?dl=0");

            if (Webpagestring01.Contains("2.0.0"))
            {
                Console.ForegroundColor = ConsoleColor.Cyan;
                Console.WriteLine("                                                  Update Found!");
                Console.WriteLine();
                Console.ResetColor();
                Console.WriteLine("------------------------------------------------------------------------------------------------------------------------");
                Console.WriteLine("Press 1 to install the update or press 2 if you want to continue to the Menu");
                Console.WriteLine();
                Console.WriteLine("------------------------------------------------------------------------------------------------------------------------");
                int answer06 = Convert.ToInt32(Console.ReadLine());
                if (answer06 == 1)
                {
                    Process.Start("https://www.dropbox.com/sh/6gx6zf2lpy1u4xj/AAAEF7wgUrxYGX9v8PKvEmXna?dl=1");
                }
                else if (answer06 == 2)
                {
                    for (int i = 1; i <= 35; i++)
                    {
                        Console.WriteLine();
                    }
                    goto Menu;
                }
            }


Что я уже пробовал:

Я попытался исправить эту проблему, изменив имена Webpagestring на Webpagestring01

1 Ответов

Рейтинг:
4

OriginalGriff

Если вы загрузите строку и сохраните ее в файл, вы увидите, что это полная веб-страница вместе с Javascript, необходимым для ее работы.
И он содержит строку:

return {"waitSeconds": 30, "map": {"modules/shims/react": {"__real_external/react": "external/react-15.3.1-prod", "external/react": "external/react-15.3.1-prod"}, "external/jquery_security_patch_bundle": {"jquery": "jquery", "__real_jquery": "jquery"}, "external/react-redux-3.1.0": {"redux": "external/redux-3.6.0"}, "*": {"external/react-dnd-scrollzone": "external/react-dnd-scrollzone-3.0.0", "external/react-dnd": "external/react-dnd-2.1.4", "external/tslib": "tslib", "langpack": "javascript/langpack/en", "external/immutable": "external/immutable-3", "external/redux-thunk": "external/redux-thunk-2.1.0", "external/react-dom/server": "external/react-dom/server-15.3.1-prod", "external/sjcl": "external/sjcl-1.0.3", "__real_jquery": "jquery", "external/videojs/video": "external/videojs/video-5.10.7", "external/react": "modules/shims/react", "external/react-redux": "external/react-redux-3.1.0", "__real_external/rsvp": "external/rsvp", "external/rsvp": "modules/shims/es6-promise", "external/react-router": "external/react-router-2.0.0",
Который содержит текст, который вы ищете: "2.0.0"
В документе есть еще несколько экземпляров этой строки.
На первый взгляд, либо это не та страница / документ, который вам нужен, либо ваша поисковая строка слишком проста и ловит ложное срабатывание.
Но нам нужно знать гораздо больше о том, что именно вы пытаетесь сделать и что вы ожидаете получить, прежде чем мы сможем помочь вам решить эту проблему!


GrabiCraft

Документ, который я написал, должен содержать текущий номер версии моей программы, а оператор If должен решить, загружать ли версию из интернета или нет. Я ожидаю получить простой текст, который я написал в документе, так что номер версии. Он должен проверять наличие обновлений каждый раз при запуске программы.

OriginalGriff

Поэтому вам нужно посмотреть на строку, которую вы извлекаете, и посмотреть, является ли это тем документом, который вы ожидаете.
Я не могу этого сделать - я понятия не имею, как должен выглядеть ваш документ.
Попробуйте сохранить строку в файл с помощью File.WriteAllText и посмотрите на результат с помощью текстового редактора.

GrabiCraft

Мой документ должен выглядеть как 210420081.0.0.0, написанный простым текстом.
Извините, но я новичок и после получасового поиска в интернете сдаюсь. Пожалуйста, свяжите меня с учебником или посмотрите на строку

GrabiCraft

Теперь все решено. Тнх. Теперь я использовал pastebin вместо Dropbox.

OriginalGriff

Пожалуйста!