Я создал DLL-файлы в asp.net (Visual Studio 2015) для отображения событий календаря Google для отображения в списке, для ошибок и пройденных шагов, которые мы сохранили в файле журнала, для получения событий календаря Google, я Я создал проект в консоли разработчика Google, и я сгенерировал идентификатор клиента и учетную запись службы с учетными данными OAuth 2.0 и делегированием по всему домену.
Затем я назвал ту же самую DLL в проекте dot net, и он прекрасно работает для меня.
[консоль Google] [1]
Затем я создал экземпляр службы с режимом аутентификации как OAuth, затем я создал smartobject для этого и вызвал этот smartobject при нажатии кнопки и вызвал методы dll, вывод был просто обработкой изображения, которое было отображено. я проверил с файлом журнала, что нет сообщения об ошибке или пройденный шаг был сохранен как показ в изображениях ниже.
public static CalendarService AuthenticateOAuth(string clientSecret, string clientId, string credPath, string[] scopes)
{
try
{
GCalender.StepPassed("Inside AuthenticateOAuth");
string userName = "mailid";// A string used to identify a user.
if (clientSecret!= null)
{
GCalender.StepPassed("Before UserCredential");
// here is where we Request the user to give us access, or use the Refresh Token that was previously stored in %AppData%
UserCredential credential = GoogleWebAuthorizationBroker.AuthorizeAsync(new ClientSecrets
{
ClientId = clientId,
ClientSecret = clientSecret
}, scopes, userName, CancellationToken.None, new FileDataStore(credPath, true)).Result;
return new CalendarService(new BaseClientService.Initializer()
{
HttpClientInitializer = credential,
ApplicationName = "GCalendar",
});
}
else
{
throw new Exception("Check the credential");
}
}
catch (Exception ex)
{
throw new Exception("CreateServiceAccountCalendarFailed", ex);
GCalender.ErrorLogin(ex);
}
}
}