Pus*_*ots 5 asp.net openid oauth-2.0 simplemembership asp.net-identity
使用SimpleMembership,您可以向外部身份验证提供程序按钮添加一个图标,如下所示:
SimpleMembership:
Dictionary<string, object> FacebooksocialData = new Dictionary<string, object>();
FacebooksocialData.Add("Icon", "/content/images/gui/loginFacebook.png");
OAuthWebSecurity.RegisterFacebookClient(
appId: "x",
appSecret: "x",
displayName: "Facebook",
extraData: FacebooksocialData);
Run Code Online (Sandbox Code Playgroud)
然后在您的视图中将它们显示为:
@foreach (AuthenticationClientData p in Model)
{
<button class="externalLoginService" style="cursor:pointer;color:transparent;border:none;background:url(@p.ExtraData["Icon"]);width:94px;height:93px;margin-right:20px;" type="submit" name="provider" value="@p.AuthenticationClient.ProviderName" title="Log in with @p.DisplayName">@p.DisplayName</button>
}
Run Code Online (Sandbox Code Playgroud)
ASP.NET标识(?):
app.UseFacebookAuthentication(
appId: "x",
appSecret: "x");
Run Code Online (Sandbox Code Playgroud)
如何使用ASP.NET Identity(控制器和视图)实现相同的功能?
另一种方式:
拿了一些博客中的内容(使用zocial图标,但我发现那些有点过分 - 请参阅css文件,你会明白我的意思):http: //www.beabigrockstar.com/pretty-social-login-buttons -用于-ASP净MVC-5 /
这样做是这样的:
Startup.Auth.cs (没有额外的东西,只是MVC 5应用程序的标准默认内容)
app.UseFacebookAuthentication(appId: "x", appSecret: "x");
app.UseGoogleAuthentication();
Run Code Online (Sandbox Code Playgroud)
CSS:
.socialLoginButton {
cursor:pointer;color:transparent;border:none;width:94px;height:93px;margin-right:20px;
}
.socialLoginButton.facebook {
background:url(/content/images/gui/loginFacebook.png);
}
.socialLoginButton.google {
background:url(/content/images/gui/loginGoogle.png);
}
Run Code Online (Sandbox Code Playgroud)
视图:
<button type="submit" class="externalLoginService socialLoginButton @p.AuthenticationType.ToLower()" id="@p.AuthenticationType" name="provider" value="@p.AuthenticationType" title="Log in with @p.Caption">@p.AuthenticationType</button>
Run Code Online (Sandbox Code Playgroud)
在上面的其他解决方案/答案中使用类而不是不那么优雅的样式属性.
| 归档时间: |
|
| 查看次数: |
3449 次 |
| 最近记录: |