在web.config中更改密钥以保存多个值

时间:2013-11-22 17:06:37

标签: c# asp.net-mvc asp.net-mvc-4 razor nopcommerce

我希望更改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));
        }

1 个答案:

答案 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));