我希望更改web.config,以便密钥包含多个值:
我现在按照建议修改了代码,
如果产品SKU以O-GREET或O-PEGC开始,那么将会启动一个打孔模块,如果不是正常情况下将产品添加到购物篮中,
在web.config文件中我有:
<add key="PunchOutOnSKUPrefix" value="O-GREET,O-PEGC"/>
并在相关控制器(ShoppingCartCOntroller)中
Extensions.PunchOut punchOut = new Extensions.PunchOut();
Boolean isPunchOut;
String id = productVariant.Sku;
String ticketId = null;
// Check that the product supports Punch out integration by looking at the first 3 letters of its SKU
if (String.IsNullOrWhiteSpace(id))
{
isPunchOut = false;
}
else
{
option = id.Substring(0, 7);
isPunchOut = ConfigurationManager.AppSettings["PunchOutOnSKUPrefix"].Split(',').DefaultOrNull(s => s.Equals(option));
}
答案 0 :(得分:1)
Split返回一个选项数组,如果要搜索特定值,请使用:
var option = id.Substring(0, 7);
var isPunchOut = ConfigurationManager.AppSettings["PunchOutOnSKUPrefix"].Split(',').DefaultOrNull(s => s.Equals(option));
如果您想检查id
是否以任何值开头,请使用:
var isPunchOut = ConfigurationManager.AppSettings["PunchOutOnSKUPrefix"].Split(',').Any(s => id.StartsWith(s));