c# - 我可以在全局可用的静态类中创建 cookie 吗?
问题描述
我想从我的所有控制器中访问一些功能。其中的功能是写入和读取 cookie。
在之前的项目中,我在基本控制器中创建了全局函数,并让所有控制器都继承自该控制器。但现在我想以不同的方式来做。
我已将类文件AppFunctions.cs
放在名为的根文件夹中AppFunctions
:
using Microsoft.AspNetCore.Http;
using System;
using System.Linq;
namespace Projects.AppFunctions
{
public static class AppFunctions
{
public static void CreateCookie(string name, string value)
{
var options = new CookieOptions();
options.Expires = DateTime.Now.AddMinutes(120);
Response.Cookies.Append(name, value, options); // Red squiggly on Response
}
// More functions ...
}
}
现在我面临两个问题:
Response.Cookies.Append();
不被识别,也不鼓励我添加任何使用来实现它。- 当我尝试
CreateCookie();
从控制器调用时,我不能。错误消息是“该名称CreateCookie
在当前上下文中不存在。并且using Projects.AppFunctions
像这样添加或调用它也无济于事:AppFunctions.CreateCookie();
解决方案
尝试(响应在控制器的上下文中可用)
public static void CreateCookie(Response response, string name, string value)
{
var options = new CookieOptions();
options.Expires = DateTime.Now.AddMinutes(120);
response.Cookies.Append(name, value, options); // Red squiggly on Response
}
推荐阅读
- c++ - 将浮点数舍入到更小的精度
- python - 找不到如何编译自定义 MIB 以在我的简单 python SNMP 工具中使用
- javascript - Javascript:你能检查一个对象是否有一个包含另一个键的键
- elasticsearch - 按查询 API 删除会抛出类型 [[_delete_by_query,尝试自动创建映射,但动态映射已禁用]] 缺失]
- azure - 日志分析工作区中的 Azure DB 同步日志
- python - 从另一个调用 Google Cloud 函数
- python - 函数实例化类的命名约定
- laravel - Laravel/Eloquent whereIn/where 有一对集合
- google-sheets - Google 表格 - 基于包含特定公式的单元格的条件格式
- networking - FIN-ACK 数据包是从服务器发送的,但客户端在客户端发送 FIN-ACK 数据包之前发送 HTTP 请求