Служба Windows останавливается с ошибкой - PullRequest
0 голосов
/ 18 октября 2018

Я новичок в мире C #, потому что из-за моего единственного проекта мне нужно создать одну службу Windows, где я должен вызвать веб-службу, выполнить некоторые операции и создать для нее журнал.Во-первых, я создал приложение для Windows и запустил приложение, и оно работало, но то же самое, когда я пытаюсь сделать это в Windows Service (C #). Служба запускается, но перестает работать, выдавая ошибку:

Служба не может быть запущена.System.ServiceModel.FaultException`1 [System.ServiceModel.ExceptionDetail]: ссылка на объект не установлена ​​для экземпляра объекта.(Сведения об ошибке совпадают с ExceptionDetail, скорее всего, созданным с помощью IncludeExceptionDetailInFaults = true, значение которого: System.NullReferenceException: ссылка на объект не установлена ​​на экземпляр объекта.) в FMIWebService.FMInteractWebService.GetData (RequestInfo reqInfo) в SyncInvokeGetData (Object, Object [], Object []) в System.ServiceModel.Dispatcher.SyncMethodInvoker.Invoke (входные данные объекта, выходы объекта [], объект в &)System.ServiceModel.Dispatcher.DispatchOperationRuntime.InvokeBegin (MessageRpc & rpc) в System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage5 (MessageRpc & rpc) в System.ServiceModel.DistimeService.MessSerp.RecRecRecRec

Мой файл service.cs:

 protected override void OnStart(string[] args)
    {


        //Write Logs
        WriteToFile("Service is started at " + DateTime.Now);

        doWork();

        timer.Elapsed += new ElapsedEventHandler(OnElapsedTime);
        timer.Interval = 10000; 
        timer.Enabled = true;
    }

    public void doWork() {

        FMsystemcall obj = new FMsystemcall();
        DataSet tickets = obj.FMAPICall("FM_SP_DOVEVIVO_TICKET_PULL","","FALSE","REQNO");
        for (int i = 0; i < tickets.Tables[0].Columns.Count - 35; i++)
        {
            string reqno = tickets.Tables[0].Rows[i]["REQNO"].ToString();
            DataSet isss = obj.FMAPICall("FM_SP_DOVEVIVO_TICKET_PULL", reqno, "TRUE");
            WriteToFile("IDFM:-" + isss.Tables[0].Rows[0]["IDFM"].ToString());
            WriteToFile("STATUS:-" + isss.Tables[0].Rows[0]["Status"].ToString());
            WriteToFile("MESSAGE:-" + isss.Tables[0].Rows[0]["Message"].ToString());
            WriteToFile("\n");
        }
    }

Любая помощь будет высоко оценена !!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...