Проект WCF не может найти строку подключения - PullRequest
0 голосов
/ 27 ноября 2018

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

  public ApiResponse RunCourseReports()
    {
        ApiResponse api = new ApiResponse();
        List<string> Errors = new List<string>();
        try
        {
            LCVista.Models.Courses report = new LCVista.Models.Courses();
            report.ParseCourseDetailsFromSumtotal();


        //    if (Errors.Count > 0)
        //    {
        //        throw new Exception();

        //    }
        //    api.Message = "";
        //    api.Status = "Success";
          return api;
        }
        catch (Exception e)
        {
            api.Status = "Error" + e.Message.ToString();
            api.Message = e.Message;
            //api.Message = "Error";

            return api;
        }
        }

Он пытается получить курсы с помощью Entity Framework следующим образом:

 public List<tblStage_Course_Details> GetCourseDetails()
    {
        List<tblStage_Course_Details> courseDetailsList = new List<tblStage_Course_Details>();

        try
        {
            using (var context = new CourseDetailsContext())
            {
                List<tblStage_Course_Details> courseDetailsLista = (context.tblStage_Course_Details.Where(s => s.Processed == false)).ToList();
            }
        }
        catch (Exception e)
        {
            string message = e.Message;
            string api = "Course Details";
            SaveErrors(message, api, "Getting Course Details", "error");
        }


        return courseDetailsList;
    }

Я получаю исключение, сообщающее, что «Строка подключения с именем 'CourseDetailsContext' не найдена в приложениифайл конфигурации. "

Ниже приведен текст CourseDetailsContext:

 public partial class CourseDetailsContext : DbContext
{
    public CourseDetailsContext()
        : base("name=CourseDetailsContext")
    {
    }

    public virtual DbSet<tblStage_Course_Details> tblStage_Course_Details { get; set; }

    protected override void OnModelCreating(DbModelBuilder modelBuilder)
    {
        modelBuilder.Entity<tblStage_Course_Details>()
            .Property(e => e.Code)
            .IsUnicode(false);

Все файлы Web Config имеют строку подключения для CourseDetailsContext.Я проверил строку подключения, и она работает.Проблема в том, что консольное приложение вызывает мой веб-сервис в моем проекте, но не передает строку подключения.

1 Ответ

0 голосов
/ 27 ноября 2018

Добавьте строку подключения в App.config вашего консольного приложения и установите Entity Framework в консольное приложение.

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