C# APS Общий обработчик - System.NullreferenceException во время response.write()
Я хочу отправлять отправленное сервером событие клиенту каждый раз, когда запускается новое событие.
Но внутри моего обратного вызова я вызываю статический метод с именем commonEventBuffer.sendIncommingEvent() и передаю текст сообщения (которое должно быть отправлено обратно клиенту, а также объект ответа), но внутри этого метода я получаю исключение SystenNullReferenceException по адресу _resp.write() вызов.
В качестве сообщения об ожидании я получаю "Ссылка на объект не установлена на экземпляр объекта. ==> System.NullReferenceException
Так что я не так делаю?
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
namespace HomeScadaWebApp
{
/// <summary>
/// Summary description for incommingEventHandler
/// </summary>
public class incommingEventHandler : IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
commonEventBuffer._storedResponse = context.Response;
getNotification.myHandler += CB;
}
private void CB(object sender, EventArgs e)
{
string s = commonAESStuff.getEventChanges();
commonEventBuffer.sendIncommingEvent(s,commonEventBuffer._storedResponse);
}
public bool IsReusable
{
get
{
return false;
}
}
}
}
snippet from class commonEventBuffer.cs
public static void sendIncommingEvent(string s,HttpResponse _resp)
{
if (_resp != null)
{
try
{
_resp.ContentType = "text/event-stream";
_resp.Write("data:" + s.ToString() + "\n\n");
_resp.Flush();
}
catch (Exception ex)
{
}
}
}