如何在DotNet.highcharts中处理带撇号的字符串

时间:2013-07-17 23:49:46

标签: asp.net-mvc-3 linq apostrophe dotnethighcharts

我有这段代码:

Categories = new[] 
{ "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", 
  "Aug", "Sep", "Oct", "Nov", "Dec" };

这与MVC3中的DotNet.Highcharts非常吻合。但是,我试图动态填充类别,其结果是查询Northwind数据库,如

IEnumerable <string> fname = from u in db.Order_Details.Take(12)
                             join w in db.Products
                             on u.ProductID equals w.ProductID
                             select w.ProductName;

string[] namearr = (string[])fname.ToArray();

.....

.SetXAxis(new XAxis
{
    Categories = namearr

....

现在有些namarr包含撇号,而高等法则无法处理这些撇号。

如何解决此问题?

1 个答案:

答案 0 :(得分:3)

哇!!!我在通过互联网挖掘后找到了解决方案。我正在回答我自己的问题,以便有人可能会发现它很有用并且可以节省时间。 显然有两种方法

string[] namearr = (string[])fname.ToArray();
int j = 0;
foreach (string name in namearr)
{
    // option 1
    // namearr[j++]= HttpUtility.HtmlEncode(name);

    // option 2
    namearr[j++] = name.Replace("'", "\\\'");
}

评论解决方案将html编码,但第二个工作正常。