Сначала используйте код MVC EF.
У меня есть 3 класса.Один создает много-много отношений между двумя другими.Я считаю, что это правильно настроено, он правильно создал таблицы в базе данных.Моя проблема в том, чтобы пытаться их запросить.Я пытаюсь вернуть коллекцию изображений, где! Picture.Del, Picture.OK2Publish имеет значение true / false / all и Pictures_Tag.ImageTag_ID == tagid (для каждого пользовательского ввода).Код ниже
public class Picture
{
public int ID {get;set;}
public string Path {get;set;}
public string Caption {get;set;}
public bool Ok2Publish {get;set;}
public bool Del {get;set;}
}
public class ImageTag
{
public int ID {get;set;}
public string Tag {get;set;}
}
public class Pictures_Tag
{
[Key]
[Column(Order = 0)]
[ForeignKey("Picture")]
public Int16 Picture_ID { get; set; }
[Key]
[Column(Order = 1)]
[ForeignKey("ImageTag")]
public Int16 ImageTag_ID { get; set; }
public virtual Picture Picture { get; set; }
public virtual ImageTag ImageTag { get; set; }
public byte PictureOrder { get; set; }
public bool ShowInGallery { get; set; }
}
var px = db.Pictures
.Include(b => b.Pictures_Tags).Include((Picture q) => .Pictures_Tags
.Select((Pictures_Tag r) => r.ImageTag_ID == tagid ))
.Where(c => !c.Del).OrderBy(z => z.PictureName);
if (searchPublish != "A")//show all
{
px = (searchPublish == "Y") ? px.Where(n => n.OK2Publish == true) :
px.Where(n => n.OK2Publish == false);
}