powered by simpleCommunicator - 2.0.18     © 2024 Programmizd 02
Map
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Проекты с разными версиями Дот Нета
16 сообщений из 16, страница 1 из 1
Проекты с разными версиями Дот Нета
    #40114420
Фотография Roust_m
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день,

Пытаюсь воссоздать код из этого линка (первый пример):
https://bornsql.ca/blog/using-the-xero-oauth-2-0-api-from-a-net-core-console-application/

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
        public async Task<XeroOAuth2Token> RefreshToken(string clientId, Xero.NetStandard.OAuth2.Config.XeroConfiguration config)
        {
            var handler = new SocketsHttpHandler();
            var httpClient = new HttpClient(handler, false);
            //var xeroToken = TokenUtilities.GetStoredToken(); replace with DB read 
            var xeroToken = GetXeroToken(clientId);
            //var utcTimeNow = DateTime.UtcNow;
            var client = new XeroClient(config, httpClient);
            xeroToken = (XeroOAuth2Token)await client.RefreshAccessTokenAsync(xeroToken);
           // TokenUtilities.StoreToken(xeroToken); replace with DB store
            return xeroToken;
        }



Выходит ошибка:
"Error CS0246 The type or namespace name 'SocketsHttpHandler' could not be found (are you missing a using directive or an assembly reference?)"

Этот пример заточен на .Net Core 3.1.

Попытался создать отдельный проект на .Net Core 3.1 и поместить туда код выше. При ссылке на этот проект выходит другая ошибка:
"Error Project '..\myproject2.csproj' targets 'netcoreapp3.1'. It cannot be referenced by a project that targets '.NETFramework,Version=v4.7.2'. myproject1"

Как сделать так, чтобы 'SocketsHttpHandler' работал на .NETFramework 4.7.2?

Спасибо.
...
Рейтинг: 0 / 0
Проекты с разными версиями Дот Нета
    #40114468
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Читаем еще раз:

авторThe type or namespace name 'SocketsHttpHandler' could not be found (are you missing a using directive or an assembly reference ?)"

и исправляем
...
Рейтинг: 0 / 0
Проекты с разными версиями Дот Нета
    #40114711
Фотография Roust_m
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ролг Хупин
Читаем еще раз:

авторThe type or namespace name 'SocketsHttpHandler' could not be found (are you missing a using directive or an assembly reference ?)"


и исправляем

Хороший совет. Вот только как это исправить на .Net Framework 4.7.2? На .Net Core 3.1 все прекрасно работает.
...
Рейтинг: 0 / 0
Проекты с разными версиями Дот Нета
    #40114753
vb_sub
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Roust_m,
SocketsHttpHandler отсутствует в NetFramework.
...
Рейтинг: 0 / 0
Проекты с разными версиями Дот Нета
    #40114759
Фотография Roust_m
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vb_sub
Roust_m,
SocketsHttpHandler отсутствует в NetFramework.


А есть эквивалент? Или может nuget какой-нибудь подгрузить?

Идея заключается в том, чтобы создать http клиент в консольном приложении и получить токен:
"you now need an HttpClient to call the API to refresh tokens using the RefreshAccessTokenAsync() method."

Идиотизм, конечно, но по другому эта API не работает.
...
Рейтинг: 0 / 0
Проекты с разными версиями Дот Нета
    #40114785
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Roust_m
vb_sub
Roust_m,
SocketsHttpHandler отсутствует в NetFramework.


А есть эквивалент? Или может nuget какой-нибудь подгрузить?

Идея заключается в том, чтобы создать http клиент в консольном приложении и получить токен:
"you now need an HttpClient to call the API to refresh tokens using the RefreshAccessTokenAsync() method."

Идиотизм, конечно, но по другому эта API не работает.


А так:
NET Framework app+NET Standard project (+SocketsHttpHandler ) ?
...
Рейтинг: 0 / 0
Проекты с разными версиями Дот Нета
    #40114789
vb_sub
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Roust_m
vb_sub
Roust_m,
SocketsHttpHandler отсутствует в NetFramework.


А есть эквивалент? Или может nuget какой-нибудь подгрузить?

Идея заключается в том, чтобы создать http клиент в консольном приложении и получить токен:
"you now need an HttpClient to call the API to refresh tokens using the RefreshAccessTokenAsync() method."

Идиотизм, конечно, но по другому эта API не работает.

Вроде либа RestSharp довольно популярна, но сам не пользовался.
...
Рейтинг: 0 / 0
Проекты с разными версиями Дот Нета
    #40114802
vb_sub
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
https://www.youtube.com/watch?v=Y9QfF0OsYLc&t=3686s
...
Рейтинг: 0 / 0
Проекты с разными версиями Дот Нета
    #40115094
Фотография Roust_m
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ролг Хупин
Roust_m
пропущено...


А есть эквивалент? Или может nuget какой-нибудь подгрузить?

Идея заключается в том, чтобы создать http клиент в консольном приложении и получить токен:
"you now need an HttpClient to call the API to refresh tokens using the RefreshAccessTokenAsync() method."

Идиотизм, конечно, но по другому эта API не работает.


А так:
NET Framework app+NET Standard project (+SocketsHttpHandler ) ?


Такой опции у меня нет. А как .Net Standard добавить в Visual Studio? Пытался гуглить и загрузить его, не нашел. Попробовал создать проект на .Net 5.0, полезли десятки ошибок в существующем коде.
...
Рейтинг: 0 / 0
Проекты с разными версиями Дот Нета
    #40115201
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Roust_m
Ролг Хупин
пропущено...


А так:
NET Framework app+NET Standard project (+SocketsHttpHandler ) ?


Такой опции у меня нет. А как .Net Standard добавить в Visual Studio? Пытался гуглить и загрузить его, не нашел. Попробовал создать проект на .Net 5.0, полезли десятки ошибок в существующем коде.


Это кто писал?
"Идея заключается в том, чтобы создать http клиент в консольном приложении " ?

К приложению добавить новый прожект типа NET Standard
...
Рейтинг: 0 / 0
Проекты с разными версиями Дот Нета
    #40115270
Фотография Roust_m
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ролг Хупин
Roust_m
пропущено...


Такой опции у меня нет. А как .Net Standard добавить в Visual Studio? Пытался гуглить и загрузить его, не нашел. Попробовал создать проект на .Net 5.0, полезли десятки ошибок в существующем коде.


Это кто писал?
"Идея заключается в том, чтобы создать http клиент в консольном приложении " ?

К приложению добавить новый прожект типа NET Standard


Вот по этой ссылке написали:
https://bornsql.ca/blog/using-the-xero-oauth-2-0-api-from-a-net-core-console-application/
Идея в том, что вендор (Xero) поменял способ аутентификации на OAuth2. Причем сделал это крайне криво, видимо полагая, что консольными приложениями щас больше не пользуются. Поэтому обновить токен можно только создав http клиент.

Нет у меня такой опции (NET Standard).
...
Рейтинг: 0 / 0
Проекты с разными версиями Дот Нета
    #40115505
Фотография Roust_m
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пока сделал так:
Install-Package StandardSocketsHttpHandler -Version 2.2.0.3
В самом коде:
Код: c#
1.
2.
using System.Net.Http;
var handler = new StandardSocketsHttpHandler();



Компилируется без ошибок, полностью проверить не могу, ибо застрял на другом куске программы.
...
Рейтинг: 0 / 0
Проекты с разными версиями Дот Нета
    #40115512
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Roust_m
Пока сделал так:
Install-Package StandardSocketsHttpHandler -Version 2.2.0.3
В самом коде:
Код: c#
1.
2.
using System.Net.Http;
var handler = new StandardSocketsHttpHandler();



Компилируется без ошибок, полностью проверить не могу, ибо застрял на другом куске программы.



Как-то странно, зачем було мутить всю эту тему? Вы могли бы это сделать сразу же.
...
Рейтинг: 0 / 0
Проекты с разными версиями Дот Нета
    #40115518
Сон Веры Павловны
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ролг Хупин
Как-то странно, зачем було мутить всю эту тему? Вы могли бы это сделать сразу же.

В составе пакета, скорее всего, уже была версия для .Net framework, просто сначала она осталась незамеченной.
...
Рейтинг: 0 / 0
Проекты с разными версиями Дот Нета
    #40115675
Фотография Roust_m
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ролг Хупин
Roust_m
Пока сделал так:
Install-Package StandardSocketsHttpHandler -Version 2.2.0.3
В самом коде:
Код: c#
1.
2.
using System.Net.Http;
var handler = new StandardSocketsHttpHandler();



Компилируется без ошибок, полностью проверить не могу, ибо застрял на другом куске программы.



Как-то странно, зачем було мутить всю эту тему? Вы могли бы это сделать сразу же.


На момент открытия темы, я не знал про такое решение.
...
Рейтинг: 0 / 0
Проекты с разными версиями Дот Нета
    #40115686
fkthat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Roust_m
Как сделать так, чтобы 'SocketsHttpHandler' работал на .NETFramework 4.7.2?

Никак. Попробуй заменить на HttpClientHandler или WebRequestHandler.
...
Рейтинг: 0 / 0
16 сообщений из 16, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Проекты с разными версиями Дот Нета
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали тему (1): Анонимы (1)
Читали форум (1): Анонимы (1)
Пользователи онлайн (9): Анонимы (6), Bing Bot, RePredeclared 1 мин., Yandex Bot 2 мин.
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]