获取owin cookie名称

时间:2018-03-10 14:55:08

标签: c# asp.net-mvc owin

在MVC 5中,我在Startup.Auth.cs中配置了OWIN身份验证,并设置了我的cookie名称:

public partial class Startup
{
    ...
    public void ConfigureAuth(IAppBuilder app)
    {
        ...
        app.UseCookieAuthentication(new CookieAuthenticationOptions
        {
            ...
            CookieName = "MYCOOKIE",
    ...

现在,我想在我的应用程序的另一个位置(另一个.cs文件中)检索此cookie名称。我该如何访问此配置?

P.S。我可以定义一个static字符串并使用它,但我不想这样做。

1 个答案:

答案 0 :(得分:3)

创建一个设置const值的类。

您可以访问CookieProvider.OWINCOOKI值。

public class CookieProvider
{
    public const string OWINCOOKIE = "MYCOOKIE";
}


public partial class Startup
{
    ...
    public void ConfigureAuth(IAppBuilder app)
    {
        ...
        app.UseCookieAuthentication(new CookieAuthenticationOptions
        {
            ...
            CookieName = CookieProvider.OWINCOOKIE,
    ...

修改

如果您不想使用conststatic获取Cookie名称。

您可以使用网络钓鱼设置。

在webconfig&#39; <add key="OwinCookie" value="OWINCOOKIE"/>

上添加appSettings
<appSettings>
  <add key="OwinCookie" value="OWINCOOKIE"/>
</appSettings>

使用System.Configuration.ConfigurationManager.AppSettings获取cookieName

public partial class Startup
{
    ...
    public void ConfigureAuth(IAppBuilder app)
    {
        ...
        app.UseCookieAuthentication(new CookieAuthenticationOptions
        {
            ...
            CookieName = System.Configuration.ConfigurationManager.AppSettings["OwinCookie"],
    ...