1

我有这个代码:

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带有撇号,而 highcharts 无法处理这些。

我该如何解决这个问题?

4

1 回答 1

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 编码,但第二个工作正常。

于 2013-07-19T00:37:29.200 回答