Привет всем, меня зовут Танигучи
Я пытаюсь пройти аутентификацию в Azure Active Directory, но код sintaxe показывает ошибку.
Интерфейс аутентификации:
public interface IAuthenticator
{
Task<AuthenticationResult> Authenticate(string authority, string resource, string clientId, string returnUri);
}
класс аутентификатора:
[assembly: Xamarin.Android.Dependency(typeof(App11.Authenticator))]
public class Authenticator : IAuthenticator
{
public async Task<AuthenticationResult> Authenticate(string authority, string resource, string clientId, string returnUri)
{
var authContext = new AuthenticationContext(authority);
if (authContext.TokenCache.ReadItems().Count() > 0)
authContext = new AuthenticationContext(authContext.TokenCache.ReadItems().First().Authority);
var uri = new Uri(returnUri);
var platformParams = new PlatformParameters((Activity)Android.Context);
var authResult = await authContext.AcquireTokenAsync(resource, clientId, uri, platformParams);
return authResult;
}
}
где я вызываю аутентификацию:
public class MainActivity : AppCompatActivity
{
protected override void OnCreate(Bundle bundle)
{
base.OnCreate(bundle);
SetContentView(Resource.Layout.activity_main);
Authenticate();
}
public async void Authenticate()
{
string Nome_Usuario = "taniguchi.sales@ax4b.com";
string clientId = "2b121ed5-9fe6-4ddf-bdea-9bbe8cd37bd0";
string authority = "https://login.microsoftonline.com/ax4b.com";
string returnUri = "https://ax4bdev.crm2.dynamics.com";
string graphResourceUri = "https://ax4bdev.crm2.dynamics.com";
var auth = Xamarin.Android.DependencyService.Get<IAuthenticator>();
var data = await auth.Authenticate(authority, graphResourceUri, clientId, returnUri);
}
protected override void OnActivityResult(int requestCode, Result resultCode, Intent data)
{
base.OnActivityResult(requestCode, resultCode, data);
AuthenticationAgentContinuationHelper.SetAuthenticationAgentContinuationEventArgs(requestCode, resultCode, data);
}
Строка:
[assembly: Xamarin.Android.Dependency(typeof(App11.Authenticator))]
показывает ошибку: Ошибка CS0234 Тип илиимя пространства имен 'DependencyAttribute' не существует в пространстве имен 'Xamarin.Android' (вам не хватает ссылки на сборку?)