Chart.Mvc与System.Web.Helpers.Chart冲突

时间:2016-06-04 22:19:54

标签: c# asp.net-mvc charts chart.js

我试图将Chart.Mvc控件(Chart.js)添加到我的Asp.net MVC 5网站。但是,当我按照此处的示例进行操作时:https://github.com/martinobordin/Chart.Mvc

我收到以下错误:

  

CS0426:类型名称' Mvc'类型&System; Web.Helpers.Chart'

中不存在

Chart.Mvc的引用似乎与System.Web.Helpders.Chart发生冲突。

我已经使用完全限定的参考资料尝试了它,但没有:

var barChart = new Chart.Mvc.ComplexChart.BarChart();
barChart.ComplexData.Labels.AddRange(new []{ "January", "February",  "March", "April", "May", "June", "July"});
barChart.ComplexData.Datasets.AddRange(new List<ComplexDataset>...

var barChart = new BarChart();
barChart.ComplexData.Labels.AddRange(new []{ "January", "February",  "March", "April", "May", "June", "July"});
barChart.ComplexData.Datasets.AddRange(new List<ComplexDataset>

第二个选项会产生稍微不同的错误:

  

CS0246:类型或命名空间名称&#39; BarChart&#39;找不到(你错过了使用指令或汇编引用吗?)

向控制器添加using Chart.Mvc;或向视图添加@Chart.Mvc无效;

3 个答案:

答案 0 :(得分:2)

我自己也遇到了同样的问题,并在寻找Github回购时找到了答案。您需要将命名空间添加到/Views/web.config文件中的Chart.Mvc。

请参阅作者/Views/web.config file以供参考。

<system.web.webPages.razor>
<host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=5.2.2.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<pages pageBaseType="System.Web.Mvc.WebViewPage">
  <namespaces>
    <add namespace="System.Web.Mvc" />
    <add namespace="System.Web.Mvc.Ajax" />
    <add namespace="System.Web.Mvc.Html" />
    <add namespace="System.Web.Optimization"/>
    <add namespace="System.Web.Routing" />
    <add namespace="Chart.Mvc.Sample" />
    <add namespace="Chart.Mvc" />
    <add namespace="Chart.Mvc.ComplexChart" />
    <add namespace="Chart.Mvc.SimpleChart" />
    <add namespace="Chart.Mvc.Sample.Models" />
    <add namespace="Chart.Mvc.Extensions"/>
  </namespaces>
</pages>

答案 1 :(得分:0)

在Vies / web.config文件中添加引用有助于摆脱编译错误,我仍然没有得到网页上显示的图表

答案 2 :(得分:0)

通过包括名称空间并将引用添加到Chart.js 中使其正常工作并显示。

名称空间也可以直接包含在razor视图中。

@using Chart.Mvc;
@using Chart.Mvc.Extensions;
@using System.Web.Mvc;
@using System.Web.Mvc.Ajax;
@using System.Web.Mvc.Html;
@using System.Web.Optimization;
@using System.Web.Routing;
@using Chart.Mvc;
@using Chart.Mvc.ComplexChart;
@using Chart.Mvc.SimpleChart;


@Scripts.Render("~/scripts/Chart.js")