加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

ASP.NET Identity外部认证提供程序自定义图标

发布时间:2020-12-16 07:24:53 所属栏目:asp.Net 来源:网络整理
导读:使用SimpleMembership,您可以向外部身份验证提供程序按钮添加一个图标,如下所示: SimpleMembership: Dictionarystring,object FacebooksocialData = new Dictionarystring,object();FacebooksocialData.Add("Icon","/content/images/gui/loginFacebook.png
使用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);

然后在您的视图中将它们显示为:

@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>
}

ASP.NET标识(???):

app.UseFacebookAuthentication(
   appId: "x",appSecret: "x");

如何使用ASP.NET Identity(控制器和视图)实现相同的功能?

解决方法

另一种方式:

拿了一些博客中的内容(使用zocial图标,但我发现那些是过度的 – 请参阅css文件,你会明白我的意思):
http://www.beabigrockstar.com/pretty-social-login-buttons-for-asp-net-mvc-5/

这样做是这样的:

Startup.Auth.cs(没有额外的东西,只是MVC 5应用程序的标准默认内容)

app.UseFacebookAuthentication(appId: "x",appSecret: "x");
app.UseGoogleAuthentication();

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);
}

视图:

<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>

在上面的其他解决方案/答案中使用类而不是不那么优雅的样式属性.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读