这可能很简单,但我无法弄清楚如何在单个语句中设置多个属性。
LCCorsOptions.cs :
public class LCCorsOptions
{
public int AppId { get; set; }
public string Version { get; set; } = "1.0";
}
这是我到目前为止所得到的:
app.UseLCCors(o => o.Version = "1.0");
我尝试了多种方法,但没有运气
答案 0 :(得分:4)
这是关于lambda语法,右边的部分是一个普通的方法体,当它是1个表达式或1个语句时可以缩短。否则,请使用完整{ }
和;
app.UseLCCors(o => {o.Version = "1.0"; o.AppId = 2; });
答案 1 :(得分:3)
我假设你正在使用类似这样的扩展方法:
public static void UseLCCors(this List<LCCorsOptions> list, Action<LCCorsOptions> action)
{
foreach (var item in list)
{
action(item);
}
}
如果是这样的话,试着在lambda符号之后放一些括号:
app.UseLCCors(x => { x.Version = "1"; x.AppId = 1; });
这是你一直在寻找的吗?
答案 2 :(得分:1)
您可能希望在应用初始化时提供LCCorsOptions
。你不能做这样的事情:
app.UseLCCors(new LCCorsOptions{Version = "1.0", AppId = 2});