public ActionResult OkCallback() { Dictionary <string, string> parameters = Request.Params.ToDictionary(); if (parameters.ContainsKey("error")) { return(RedirectToAction("Index", "Home")); } // Create request message string portalUri = _settings.PortalUri; var signInUri = new UriBuilder(portalUri) { Path = (Url.Action("ok") ?? string.Empty).ToLowerInvariant() }; IIdentityProvider identityProvider = _identityFactory.CreateIdentityProvider(ProviderType.Odnoklassniki); string result; try { result = identityProvider.GetResponseHtml(parameters, signInUri.Uri); } catch (Exception e) { Trace.TraceError("Failed to create html response for ok: {0}", e); return(RedirectToAction("Index", "Home")); } return(new HtmlResult(result)); }