c# - 获取 owin cookie 名称

标签 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 字符串并使用它,但我不想这样做。

最佳答案

创建一个类集合 a const值(value)。

您可以访问CookieProvider.OWINCOOKI值(value)。

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 名称。

您可以使用 webcofing 设置。

添加<add key="OwinCookie" value="OWINCOOKIE"/>在 webconfig 的 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"],
    ...

关于c# - 获取 owin cookie 名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49210420/

相关文章:

c# - 如何在 MVC 4 中为枚举创建默认编辑器模板?

iis - ASP.NET MVC5 OWIN 拒绝长 URL

c# - 复合应用程序的最佳日志记录方法?

c# - Outlook 2003 加载项无法加载,但处于工作状态

c# - 我应该把这个函数放在 View(代码隐藏)还是 ViewModel 中?

c# - 分配变量并在 IF 计算中检查它

c# - View 模型构造函数中的异常处理(重定向)

c# - 在 ASP.MVC 中,如何在 ViewData 中放置 JavaScript 友好的异常堆栈跟踪?

c# - Owin.Websocket 超过消息大小导致 CPU 使用率高

c# - Owin,在身份验证请求中传递自定义查询参数