библиотека класса отладки, которая работает в планировщике задач - PullRequest
0 голосов
/ 06 февраля 2019

Я новичок в .net.Мне дали приложение, которое не обновляет данные о сотрудниках в базе данных.Человек, который написал приложение, создал два отдельных приложения.Одно приложение - это сторона с графическим интерфейсом, которая отображает данные о сотрудниках в графическом интерфейсе, она просто извлекает данные из базы данных и отображает их в таблице в графическом интерфейсе.

Второе приложение извлекает данные о сотрудниках из электронной таблицы Excel.и помещает данные в базу данных.Это второе приложение представляет собой библиотеку классов.Он создал библиотеку классов и вызвал dll этой библиотеки классов в планировщике задач окна, чтобы она работала каждую ночь, поэтому каждую ночь эта библиотека классов извлекает данные из электронной таблицы Excel и обновляет базу данных.

Я создал решение и добавил библиотеку классов и сторону графического интерфейса в одно решение.Я скомпилировал все решение успешно.Я думаю, проблема существует в библиотеке классов, где данные извлекаются из электронной таблицы Excel, я думаю, что сравнение не выполняется правильно в этой библиотеке классов.Если сотрудник уволен, база данных по-прежнему показывает его как активного, хотя в электронной таблице Excel этот сотрудник отображается как уволенный.

Моя проблема в том, что я не знаю, как отлаживать эту библиотеку классов, этот классВ библиотеке есть пять отдельных проектов, я даже не знаю, как вызвать метод, который извлекает данные о сотрудниках из электронной таблицы Excel.Ниже приведен код, с которого, я думаю, начинается процесс извлечения. Сначала проверяется сотрудник, а затем запускается метод с именем «Процесс»:

  using Employee.Logic;
using System;

namespace Employee.Validation
{
    public class EmployeeValidation
    {
        public EmployeeValidation(string integratorKey)
        {
            if (integratorKey != "Test")
                throw new UnauthorizedAccessException("You are not authorized to access this service");
        }

        public void Process()
        {
            new EmployeeLogic().Process();
        }
    }
}

Я пытался написать метод модульного теста для вызова процесса.напрямую, но тогда все настройки конфигурации из Global.asax не инициируются.Я просто хочу вызвать новый EmployeeLogic (). Process ();со всеми настройками конфигурации, которые были сделаны в Global.asax.В библиотеке классов есть проект с именем employee в классе Library, в котором есть Global.asax, и в нем есть все настройки. Ниже приведен код для этого:

using Employee.App_Start;
using System.Web;
using System.Web.Configuration;
using System.Web.Http;

namespace Employee
{
    public class WebApiApplication : HttpApplication
    {
        protected void Application_Start()
        {        
            GlobalConfiguration.Configure(WebApiConfig.Register);

            SetupConfigurations();
        }

У него также есть employeeController.класс, который выглядит следующим образом:

using Employee.Model;
using Employee.Validation;
using System.Net;
using System.Net.Http;
using System.Web.Http;

namespace Employee.Controllers
{
    public class EmployeeController : ApiController
    {
        public EmployeeController()
        {
        }

        [Route("Employee/")]
        public HttpResponseMessage Post(Login login)
        {
            new EmployeeValidation(login?.Key).Process();
            return Request.CreateResponse(HttpStatusCode.OK);
        }
    }
}

Я попытался сохранить проект сотрудника в проекте запуска решения и поставил точки останова в этой строке "new EmployeeValidation (login? .Key) .Process ();", но я получил сообщение об ошибке:« Не удалось загрузить файл или сборку «Microsoft.AI.Web» или одну из ее зависимостей. Система не может найти указанный файл ».когда я запускал, URL-адрес был таким: localhost: 41502, я изменил его на localhost: 41502 / Employee

. Любая помощь в отладке этой библиотеки классов будет принята с благодарностью.Человек, который написал заявление, покинул компанию.Я могу запустить сторону GUI и увидеть данные на стороне GUI.

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