Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/301.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在内存中打开Asp.Net MVC视图(不在浏览器中)_C#_Asp.net Mvc_Chart.js - Fatal编程技术网

C# 在内存中打开Asp.Net MVC视图(不在浏览器中)

C# 在内存中打开Asp.Net MVC视图(不在浏览器中),c#,asp.net-mvc,chart.js,C#,Asp.net Mvc,Chart.js,我需要将在Asp.Net视图中使用ChartJS生成的图表包含到使用C#Asp.Net MVC中的报表查看器创建的报表中。为此,我考虑在内存中运行视图(不在浏览器中打开),并将图表所在的画布保存到图像文件中。所以,我会在报告中使用这个文件 我该怎么做?如果无法在内存中运行视图,是否有其他方法来实现我所需的功能。您可以执行控制器操作并在内存中获取生成的HTML,但它不会呈现HTML,除非您将其加载到浏览器中,否则它肯定不会执行任何javascript。我今天的票数已经用完了,但是保罗上面的评论是完

我需要将在Asp.Net视图中使用ChartJS生成的图表包含到使用C#Asp.Net MVC中的报表查看器创建的报表中。为此,我考虑在内存中运行视图(不在浏览器中打开),并将图表所在的画布保存到图像文件中。所以,我会在报告中使用这个文件


我该怎么做?如果无法在内存中运行视图,是否有其他方法来实现我所需的功能。

您可以执行控制器操作并在内存中获取生成的HTML,但它不会呈现HTML,除非您将其加载到浏览器中,否则它肯定不会执行任何javascript。我今天的票数已经用完了,但是保罗上面的评论是完全正确的。如果您不在浏览器中运行它,那么就没有JavaScript上下文,因此就不会有任何画布可供导出。我建议您使用相同的源数据,使用.NET组件(例如,有一个免费提供的microsoft图表组件)生成外观相似的图表,并将其插入到您的报表中。或者,找到一种客户端编写报告的方法,这样你就可以将客户端图表中的内容合并到报告中。好吧,完全有意义!我对完成我所需要的东西非常失望,以至于我没有考虑浏览器渲染视图和执行JS的基本需求。非常感谢你让我回到现实!我很抱歉浪费你的时间问这样的问题。