C# 替换字典C中的单引号

C# 替换字典C中的单引号,c#,asp.net,C#,Asp.net,在我下面的代码中,我想用一些其他的说法来代替单引号&但这并不反映 if(this.selectdFilterValues.Any(kvp => kvp.Value.Contains("'"))) { this.selectdFilterValues.Select(kvp => kvp.Value.Replace("'", "&")); } 我还想处理这个单引号,因为当它包含单引号时,我下面的JS函数不会命中 ScriptManager.RegisterStart

在我下面的代码中,我想用一些其他的说法来代替单引号&但这并不反映

if(this.selectdFilterValues.Any(kvp => kvp.Value.Contains("'")))
{
    this.selectdFilterValues.Select(kvp => kvp.Value.Replace("'", "&"));
}  
我还想处理这个单引号,因为当它包含单引号时,我下面的JS函数不会命中

ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "tmp", 
    "<script type='text/javascript'>initViz('" + 
    JsonConvert.SerializeObject(this.selectdFilterValues) + 
    "');</script>", false);
使用.Select不会就地修改原始集合。它将它们投影到一个新的IEnumerable中,您可以随意使用它。现在你只是把结果扔掉了。您可以改为使用它们来创建新词典:

this.selectedFilterValues=this.selectedFilterValues.ToDictionaryx=>x.Key,x=>x.Value.Replace',&

或者,如果您同意使用迭代方法而不是函数方法,您可以使用ForEach在字典中循环并覆盖旧值。

使用.Select不会就地修改原始集合。它将它们投影到一个新的IEnumerable中,您可以随意使用它。现在你只是把结果扔掉了。您可以改为使用它们来创建新词典:

this.selectedFilterValues=this.selectedFilterValues.ToDictionaryx=>x.Key,x=>x.Value.Replace',&


或者,如果您同意使用迭代方法而不是函数方法,您可以使用ForEach简单地在字典中循环并覆盖旧值。

当您进行此操作时。selectdFilterValues.Selectkvp=>kvp.Value.Replace',&这里使用LINQ,结果必须通过foreach循环或somethink实现。当您执行此操作时,selectdFilterValues.Selectkvp=>kvp.Value.Replace',&这里使用LINQ,并且结果必须通过foreach循环或somethink实现。错误:'bool'不包含'Replace'的定义,如果您遇到此错误,则表示您的字典具有布尔值,而不是字符串值。我在最初的文章中从您自己的代码片段中获取了这一点,因此如果您的代码片段不正确,您必须对其进行调整accurate@ShwetaGupta如果您的值是bool类型,那么你的问题一开始就没有意义了。错误:'bool'不包含'Replace'的定义。如果你遇到这个错误,这意味着你的字典有布尔值,而不是字符串值。我在最初的文章中从您自己的代码片段中获取了这一点,因此如果您的代码片段不正确,您必须对其进行调整accurate@ShwetaGupta如果您的值属于bool类型,那么您的问题一开始就没有意义。