两个表用外键连接

Two tables join with foreigns keys

让我们直接看代码。 我尝试 return 一个带有类别内部连接表的电影列表。到目前为止失败了。

public int FilmID { get; private set; }
public string FilmName { get; set; }
public string FilmDescription { get; set; }
public int FilmYear { get; set; }
public string FkCategoryID { get; set; }

我对 linq 很陌生,所以它可能是错误的。

    public List<Movie> TakeOutAllMovies()
{
    var WholeList = (from movies in db.films 
                    join cat in db.categories on movies equals cat.category_id
                    select new Movie{FilmID = movies.film_id, FilmName = movies.film_navn, FilmDescription = movies.film_description,
                                       FilmYear = movies.film_year, FkCategoryID = movies.categories.category_navn}).ToList();

    return WholeList;
}

当然失败了the type of one of the expressions in the join clause is incorrect

我想用 table 个类别中的类别名称代替 fkCategoryID,而不仅仅是 ID。我做对了吗?

你不应该加入 Moviecategory_id 但电影的 FkCategoryId:

所以

from movies in db.films          
join cat in db.categories on movies equals cat.category_id

这样:

from movies in db.films 
join cat in db.categories on movies.FkCategoryID equals cat.category_id