No estoy seguro de lo que su clase Draft
parece, pero vamos a suponer que se ve algo como esto:
public class Draft
{
public int Id { get; set; }
public int PublicationId { get; set; }
public string Name { get; set; }
}
Se puede escribir una consulta como esta:
return View(db.Drafts.Where(d => d.Name == "foo"));
esto sólo return Drafts que tenía un nombre de "foo". Esto por sí mismo probablemente no sea útil. Usted más que probable que desee controlar esto pasando datos en el controlador (cadena de consulta, el valor de la forma, el valor de ruta, etc.):
public ActionResult Index(int id, string filter)
{
return View(db.Drafts.Where(d => d.Name == filter));
}
O puede filtrar en varias propiedades:
public ActionResult Index(int id, string filter)
{
return View(db.Drafts.Where(d => d.Name == filter && d.PublicationId == id));
}
+1: No me di cuenta de que 'SingleOrDefault' tenía sobrecargas. –