Я пытаюсь сделать следующий проект в учебных целях: https://docs.microsoft.com/ru-ru/aspnet/web-forms/overview/getting-started/getting-started-with-aspnet-45-web- формы /create_the_data_access_layer
Но я застрял на этапе "Обновление файла Global.asax" - VS не позволяет мне импортировать пространство имен WingtipToys.Models в файл Global.asax.cs.
Здесь структура проекта, Globa.asax.cs и ошибка 'using'
Все сделано в соответствии с учебником Microsoft выше. Почему я не могу импортировать свои модели в файл global.asax.cs?
Мой класс ProductDatabaseInitializer:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Data.Entity;
namespace WingtipToys.Models
{
public class ProductDatabaseInitializer : DropCreateDatabaseIfModelChanges<ProductContext>
{
protected override void Seed(ProductContext context)
{
GetCategories().ForEach(c => context.Categories.Add(c));
GetProducts().ForEach(p => context.Products.Add(p));
}....
Что действительно помогло, так это воссоздание всех классов в каталоге Models (удалите все старые классы и создайте новые с тем же кодом) - тогда я начал видеть свои классы из файла Global.asax.cs.
Может быть, это может кому-то помочь.
У вашего класса нет пространства имен, которое имитирует структуру проекта. Т.е. пространство имен, определенное для вашего класса в ProductDatabaseInitializer
, не является WingtipToys.Models
namespace WingtipToys.Models //HERE ensure this namespace is actually WingtipToys.Models
{
public class ProductDatabaseInitializer
{
public string SomeProperty { get; set; }
}
}
ProductDatabaseInitializer
свой классProductDatabaseInitializer