2014-01-08 60 views
2

当我自定义登录UI(外部供应商),我想自定义随附VS2013 Web表单新项目模板的OpenAuthProviders界面,因此它显示Facebook,谷歌,Twitter的,微软Live品牌形象,而不是文字按钮。即使它与MVC5模板相关,我也会接受提供相关详细信息的答案。在Web表单模板,用户界面的用户控件具有获取此服务器的方法来填充的ListView如何使用Visual Studio 2013 OWIN安全

public IEnumerable<string> GetProviderNames() 
    { 
     return Context.GetOwinContext().Authentication.GetExternalAuthenticationTypes().Select(t => t.AuthenticationType); 
    } 

其属性,AuthenticationType,是供应商的文本名称,例如GoogleFacebook。如果Select()可以返回品牌标识图像,那将是非常好的。

我的第一次进入Startup.ConfigureAuth(IAppBuilder app),其中配置了外部提供程序,例如, app.UseFacebookAuthentication(..)。不过,我不知道如何提供可以在服务器方法中选择的brand-logo-images src-url。

如果我要破解这个,我会修改GetProviderNames()方法,其中对于每个AuthenticationType查找完成以获取可用于填充UI html中图像元素属性的图像src-url。我只是想知道是否有更优雅的方式。

回答

1

编辑与新的链接:这个问题/答案可能帮助:Custom icon question

+0

感谢。然而,该博客不适用,因为它指的是VS2012中SimpleMembership引入的不同API,OAuthWebSecurity。我正在问VS2013中如何使用Asp.Net.Identity的Microsoft.Owin.Security。 – subsci

+0

糟糕,这个问题/答案可能有帮助 –

+0

是的,新链接有我需要的信息。 – subsci