C#试图创建JSON响应,但却得到了HTML

C#试图创建JSON响应,但却得到了HTML,c#,C#,当我查看我的响应时,我有我的json数据,但在底部我有页面的html?我正在尝试创建一个JSON响应,任何明显的地方。我所做的就是创建一个空白的.aspx页面 protected void Page_Load(object sender, EventArgs e){ Database db = DatabaseFactory.CreateDatabase(); DbCommand cmd = db.GetStoredProcCommand("sp_GET_FEED"

当我查看我的响应时,我有我的json数据,但在底部我有页面的html?我正在尝试创建一个JSON响应,任何明显的地方。我所做的就是创建一个空白的.aspx页面

       protected void Page_Load(object sender, EventArgs e){ Database db = DatabaseFactory.CreateDatabase();
        DbCommand cmd = db.GetStoredProcCommand("sp_GET_FEED");
        db.AddInParameter(cmd, "@FEED_TYPE_ID", DbType.Int32, 1);

        List<NewsItem> _NewsItems = new List<NewsItem>() ;

        using (IDataReader r = db.ExecuteReader(cmd))
        {
            while (r.Read())
            {
                NewsItem i = new NewsItem();
                i.id = r["FEED_ID"].ToString();
                i.title = r["TITLE"].ToString();
                i.fulltext = r["BODY"].ToString();
                i.image = r["IMAGE_URL"].ToString();
                i.created = r["DATE_CREATED"].ToString();
                i.url = r["URL"].ToString();
                _NewsItems.Add(i);
            }
        }

        string json = JsonConvert.SerializeObject(_NewsItems);
        //Response.Clear();
        Response.AddHeader("Content-type", "text/json");
        Response.AddHeader("Content-type", "application/json");
        Response.ContentType = "application/json";
        Response.Write(json);}
protectedvoid页面_加载(对象发送方,EventArgs e){Database db=DatabaseFactory.CreateDatabase();
DbCommand cmd=db.GetStoredProcCommand(“sp_GET_FEED”);
db.AddInParameter(cmd,“@FEED\u TYPE\u ID”,DbType.Int32,1);
列表_newitems=新列表();
使用(IDataReader r=db.ExecuteReader(cmd))
{
while(r.Read())
{
NewsItem i=新的NewsItem();
i、 id=r[“FEED_id”].ToString();
i、 title=r[“title”].ToString();
i、 全文=r[“正文”].ToString();
i、 image=r[“image_URL”].ToString();
i、 created=r[“DATE_created”].ToString();
i、 url=r[“url”].ToString();
_添加(i);
}
}
string json=JsonConvert.SerializeObject(_newItems);
//Response.Clear();
AddHeader(“内容类型”、“文本/json”);
AddHeader(“内容类型”、“应用程序/json”);
Response.ContentType=“application/json”;
Response.Write(json);}
所以我的回答是

///////////////////////////////看起来正确的JSON输出//////////////////////////////

我的响应不需要它,因为它应该是JSON数据的提要。

尝试呼叫

Response.End();
Response.Write()之后
。这将阻止ASP.NET的其余部分从页面添加HTML

可选地,如果你不想渲染实际的页面,你应该首先考虑写一个ASP.NET Handler(.asx)而不是一个页面(.ASPX)。

尝试调用< /P>

Response.End();
Response.Write()之后
。这将阻止ASP.NET的其余部分从页面添加HTML


可选地,如果你不想渲染实际的页面,你应该首先考虑写一个ASP.NET Handler(.asx)而不是一个页面(.ASPX)。

< P>这是因为你在一个页面对象中呈现你的JSON,试着用一个Abjor来做它。

< P>这是因为你在一个页面对象中呈现你的JSON,请改为尝试在中执行此操作。

我相信您尚未删除aspx文件中的虚拟标记。只需删除并重试。不会有问题。

我相信您没有删除aspx文件中的虚拟标记。只需删除并重试。会好的