System.Data.Entity.Infrastructure.DbRawSqlQuery <> не содержит определения для «Включить» - PullRequest
0 голосов
/ 17 января 2019

Я разрабатываю пример приложения Music Store с ASP.NET MVC, Entity Framework и WCF.

на уровне базы данных просто хочу извлечь извлечение Genre и связанных с ним альбомов из базы данных.

поэтому использовал этот метод для него, использовал хранимую процедуру 'GetAllGenres', чтобы получить весь жанр

CREATE PROCEDURE GetAllGenres
AS
BEGIN       

   SELECT [GenreId]
      ,[Name]
      ,[Description]
  FROM [dbo].[Genres]

END
GO

метод доступа к вышеупомянутой хранимой процедуре:

public static Genre BrowseGenre(string genre)
        {
            using (MusicStoreEntities db = new MusicStoreEntities())
            {
                return db.Database.SqlQuery<Genre>("GetAllGenres").Include("Albums").Single(g => g.Name == genre);
            }
        }

Я получаю сообщение об ошибке ниже

System.Data.Entity.Infrastructure.DbRawSqlQuery »не содержит определения« Включить »и не имеет метода расширения« Включить »

как это исправить?

1 Ответ

0 голосов
/ 17 января 2019

Окончательное заключение, поскольку в SqlQuery отсутствует метод Include

public static Genre BrowseGenre(string genre)
        {
            using (MusicStoreEntities db = new MusicStoreEntities())
            {
                //return db.Database.SqlQuery<Genre>("GetAllGenres").Include("Albums").Single(g => g.Name == genre);
                return db.Genres.Include("Albums").Single(g => g.Name == genre);
            }                
        }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...