分析器错误消息:无法创建类型'xxx'

Arm*_*nce 2 .net c# iis extjs

我收到这个错误

Parser Error Message: Could not create type 'charts.lineChartData'.

Source Error: 

Line 1:  <%@ WebHandler Language="C#" CodeBehind="lineChartData.ashx.cs" Class="charts.lineChartData" %>

Source File: /WebSiteNetPas/lineChartData.ashx    Line: 1 

--------------------------------------------------------------------------------
Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.0.30319.1 
Run Code Online (Sandbox Code Playgroud)

事实上我在使用fiddler时遇到此错误,我的原始错误是:

Uncaught ReferenceError: lineChartData is not defined                   lineChart.js:20
http://localhost/WebSiteNetPas/lineChartData.ashx?proxy 500 (Internal Server Error)
Run Code Online (Sandbox Code Playgroud)

这是我的lineChartData.ashx.cs:

using System;
using System.Web;
using System.Linq;
using System.Collections.Generic;
using Newtonsoft.Json.Linq;
using System.Web.Script.Serialization;

namespace charts
{
    public class lineChartData : IHttpHandler
    {

    public void ProcessRequest(HttpContext context)
    {
        context.Response.ContentType = "text/plain";
        context.Response.Write("Hello World");
    }

    public bool IsReusable
    {
        get
        { return false; }
    }

    static string ConvertToJson()
    {
        lineChartClass c = new lineChartClass();

        double[] json = new double[4];

        //Array.Copy(c.piedata(), json, 4);
        c.piedata().CopyTo(json, 0);

        List<ChartItem> chartItems = new List<ChartItem>();

        chartItems.Add(new ChartItem() { Name = "Low", Data1 = json[0].ToString() });
        chartItems.Add(new ChartItem() { Name = "Moderate", Data1 = json[1].ToString() });
        chartItems.Add(new ChartItem() { Name = "Critical", Data1 = json[2].ToString() });
        chartItems.Add(new ChartItem() { Name = "High", Data1 = json[3].ToString() });
        string result = new JavaScriptSerializer().Serialize(chartItems);
        //result = "{ name: \"Low\", data1: " + json[0] + "}" + ",{ name: \"Moderate\", data1: " + json[1] + "}" + ",{ name: \"Critical\", data1: " + json[2] + "}" + ",{ name: \"High\", data1: " + json[3] + "}";

        return result;
    }
}
}
Run Code Online (Sandbox Code Playgroud)

如果你需要更多细节,请告诉我

提前谢谢你

Joh*_*hnW 12

我有这个......修好了......以为我会分享

如果你右键单击.asmx文件并选择视图标记,你会看到它仍然说

<%@ WebService Language="C#" CodeBehind="MyService.asmx.cs" Class="MyProject.Service1" %>
Run Code Online (Sandbox Code Playgroud)

也许不是Service1 ..但不会是你刚刚上课的

<%@ WebService Language="C#" CodeBehind="MyService.asmx.cs" Class="MyProject.MyService" %>
Run Code Online (Sandbox Code Playgroud)

保存吧..试试吧..

为我工作..

  • 还要注意Class属性中的文本区分大小写:Class ="MyProject.MyService"与Class ="MyProject.myService"不同.我自己被抓了. (2认同)

C-F*_*C-F 5

当我的项目输出目录不是 bin\ 时,我在使用 Visual Studio Development Server 时遇到了此错误

我的一个 DLL 有针对不同平台(x86、x64)的版本,因此我创建了相应的配置,它们默认得到如下输出目录:

bin\x86\Debug 
bin\x64\Debug
Run Code Online (Sandbox Code Playgroud)

但 Visual Studio 开发服务器仍然尝试从 bin\ 文件夹加载二进制文件,当然失败了。

我通过在调试配置中指定 bin\ 输出文件夹解决了该问题。