Можно ли использовать строку формата в URL-адресе для перехода на веб-страницу, заменив указанную часть URL-адреса?

Я заинтересован в создании какого-то простого приложения на C#, которое берет строку пользователя и передает ее в целевую часть URL. Например, так как пользовательский запрос виден на странице URL DuckDuckGo

Пример: https://duckduckgo.com/?q=web+browsers&ia=web

В этом случае URL показывает, что я искал "веб-браузеры". Я хотел бы, чтобы пользователь мог передавать в приложение любую строку (через какое-то приглашение, которое появляется при запуске приложения), а затем запустить веб-браузер и перейти к целевому URL-адресу с введенным пользователем вводом в URL, где запрос уточняется. (т. е. https://duckduckgo.com/?q=operating+systems&ia=web), где пользователь ввел строку "операционные системы".

Поэтому я хотел бы знать, какой тип приложения C# использовать, который может взаимодействовать с ОС (Windows 10), и как написать код для формата String и пользовательской подсказки. Любое руководство будет оценено.

3 ответа

Ваш вопрос очень широкий, поэтому лучшее, что можно сделать, это дать широкий ответ. Вы упоминаете "приложение" и "взаимодействовать с ОС", поэтому я предполагаю, что приложение является нативным, а не веб-приложением. Быстрый способ сделать это - использовать Google для примера веб-браузера C#; Есть множество приложений с хорошо объясненным исходным кодом, которые ответят на ваш вопрос:

Поэтому я хотел бы знать, какой тип приложения C# использовать, который может взаимодействовать с ОС (Windows 10)

Что касается замены строки, Армине уже указывал на это в своем предыдущем посте. Простое текстовое поле в вашей форме, переданное некоторому коду анализа с заменой строки, поможет при создании URL. Полученный URL-адрес затем передается в элемент управления веб-браузера, который вы использовали в своем приложении C#; URL будет одним из свойств элемента управления.

Я не выполнил это, но думаю, что это должна быть логика.

string input = "operating system";
string destinationURL = $"https://duckduckgo.com/?q={input}&ia=web";
string formattedURL = HttpContext.Current.Server.UrlEncode(destinationURL);
System.Diagnostics.Process.Start(formattedURL);

Идея состоит в том, чтобы взять то, что пользователь ввел в качестве строки, а затем создать другую строку, которая будет содержать слова этой строки, разделенные символом плюса (+)

String what_user_typed=" javascript jquery";
String query=what_user_typed.Replace(" ","+"); // A space represents a new word
String url="https://www.google.com/search?query="+query

После создания URL вы можете использовать веб-браузер, чтобы открыть этот URL

Другие вопросы по тегам