AddCors 服务选项设置不起作用.net Core 3 Web API
Posted
技术标签:
【中文标题】AddCors 服务选项设置不起作用.net Core 3 Web API【英文标题】:AddCors service options settings not working .net Core 3 Web API 【发布时间】:2020-12-17 15:53:57 【问题描述】:我绝对要把头发拉出来,我敢肯定它真的很傻。但是我一直在学习一些 .net Core 教程,并且正在尝试实现 CORS。我正在浏览所有帮助页面,但在这段代码中
public void ConfigureServices(IServiceCollection services)
services.AddCors(options =>
options.AddPolicy(name: MyAllowSpecificOrigins,
builder =>
builder.WithOrigins("https://localhost:1111/",
"https://localhost:2222/");
);
);
// services.AddResponseCaching();
services.AddControllers();
我无法获得任何可用于我的“选项”的选项(除了将其设置为 ToString 等而不是做某事),我得到:
'object' 不包含 'AddPolicy' 的定义,并且没有 可访问的扩展方法“AddPolicy”接受第一个参数 可以找到类型“对象”
我已经安装了各种 Nuget 包,但似乎没有任何效果?
编辑 根据要求,IServiceCollection 包括:
public interface IServiceCollection
void AddControllers();
void AddCors(Action<object> p);
void AddMvc();
【问题讨论】:
F12 和IServiceCollection
是什么样的?
我已将其添加到我的原始帖子中。
尝试清理解决方案,或者重启visual studio
两者都做了,不幸的是没有任何区别。
【参考方案1】:
当它显示object
时,它无法确定类型。尝试使用实际类型或接口预先转换对象,例如:
services.Cast<TheClassThatImplemntsAnItemInCollection | ITypeInCollection >()
.AddCors( options =>...
集合的类型不是进入演员阵容的,而是它的成员。
【讨论】:
我不能选择 Cast 吗? 可能需要添加Linq
命名空间。以上是关于AddCors 服务选项设置不起作用.net Core 3 Web API的主要内容,如果未能解决你的问题,请参考以下文章