Не удалось найти тип или имя пространства имен «AutoCompleteEntities2» (отсутствует директива using или ссылка на сборку?)

#c# #sql #reactjs #visual-studio-2017 #ssms

Вопрос:

Я следую учебнику, как «Добавить текстовое поле автозаполнения в приложение React»(Ссылка : https://dzone.com/articles/how-to-add-autocomplete-textbox-in-react-applicati). Я следил за всем, как есть, но получил одну следующую ошибку.

 using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using AutoCompleteCustomers.Models;
namespace AutoComplete.Controllers
{
    [RoutePrefix("Api/autoComplete")]
    public class AutoCompleteController : ApiController
    {
        AutoCompleteEntities2 DB = new AutoCompleteEntities2();
        [HttpGet]
        [Route("Countrylist")]
        public object Getrecord()
        {
            var data = DB.cicmpy.ToList();
            return data;
        }
    }
}
 

Ошибка, которую я получаю : «Не удалось найти тип или имя пространства имен ‘AutoCompleteEntities2’ (у вас отсутствует директива using или ссылка на сборку?)»

Чтобы исправить это, я добавил новый класс с пространством имен «AutoCompleteEntities2», затем он выдает мне новую ошибку «»AutoCompleteEntities2» не содержит определения для «cicmpy», и не может быть найден доступный метод расширения, принимающий первый аргумент типа » (у вас отсутствует директива using или ссылка на сборку?)»

Я довольно новичок в C# и в настоящее время учусь, был бы очень признателен, если бы кто-нибудь мог объяснить ошибку и руководство по ее исправлению. Спасибо!

Ответ №1:

Вы можете попробовать выполнить следующие действия, чтобы попытаться решить свою проблему.

Во-первых, пожалуйста, найдите файл model1.context.cs в вашем решении и откройте его.

Как обычно, вы получите следующий аналогичный сгенерированный код.(Если нет, пожалуйста, создайте ADO.NET Снова модель сущностных данных )

     namespace WebApplication2.Models
    {
        using System;
        using System.Data.Entity;
        using System.Data.Entity.Infrastructure;
        
        public partial class SchoolEntities : DbContext
        {
            public SchoolEntities()
                : base("name=SchoolEntities")
            {
            }
        
            protected override void OnModelCreating(DbModelBuilder modelBuilder)
            {
                throw new UnintentionalCodeFirstException();
            }
        
            public virtual DbSet<TblCountry> TblCountries { get; set; }  // corrspond  in the entity.TblCountries
        }
    }
 

Во-вторых, нам нужно добавить WebApplication2.Models AutoCompleteController и определить метод преобразования набора данных в список.

 using System.Linq;
using System.Web.Mvc;
using WebApplication2.Models;

namespace WebApplication2.Controllers
{
    public class AutoCompleteController : Controller
    {

        SchoolEntities entity = new SchoolEntities();

         [HttpGet]  
         [Route("Countrylist")]
        public object Getrecord()
        {
            var data = entity.TblCountries.ToList();

          return data;  
        }


    }
}
 

Вы можете изменить соответствующий код в соответствии с моим кодом. Я думаю, что вам следует использовать using AutoComplete.Models; .