У меня есть проект, над которым я работаю.Я решил использовать Entity Framework с генератором DBContext (чтобы иметь постоянные непознанные объекты), и теперь я застрял с некоторыми проблемами.
Вот как я устанавливаю свое решение:
Решение:
- MyProject (мой проект веб-приложения)
- BusinessObjects (проект) содержит файл myproject.tt со всеми объектами (сущностями) внутри.Каждый в отдельном файле .cs.
- DataAccess (проект) содержит файлы myproject.edmx, myproject.Context.tt
Вот мой вопрос: (я новичок во всем этом)
Допустим, у меня есть объект (объект) Job, и я хочу определить методы выбора, вставки, обновления и удаления этого объекта. Где я могу это сделать? Я попытался создать папку Custom (куда я бы поместил все свои настройки) в проекте BusinessObjects.Затем я хотел определить свои методы там, но я не знаю, как создать новый экземпляр объекта ctx (context).
Вот мой код:
namespace BusinessObjects
{
public partial class Job
{
public Job GetJob(Guid Id) {
using (var ctx = new BestGigEntities())
}
return null; //for now
}
}
}
Сообщение об ошибкеЯ понимаю, что BestGigEntities не существует в пространстве имен.BestGigEntities должен находиться в BusinessObjects, но почему-то он не виден, когда я пытался получить к нему доступ из проекта BusinessObject.Но я вижу это из моего основного веб-проекта.В myproject.Context.tt у меня BusinessObjects определены как пространство имен пользовательских инструментов.Почему я не вижу этого?
Я проверил свой файл myproject.Context.cs и вижу
public partial class BestGigEntities : DbContext
{
public BestGigEntities()
: base("name=BestGigEntities")
{
. ...
Кажется, все в порядке.Я почти уверен, что добавил все ссылки правильно.Я думаю, может быть, я пытаюсь определить эти методы в неправильном месте?
BestGigEntities видно из моего веб-проекта, и я могу использовать его оттуда.
Любая помощь приветствуется.