Sto usando ASP.NET MVC 4 con il modello di struttura di entità prima.Come posso creare una funzionalità di ricerca con vista parziale in asp.net mvc 4
Nel mio "Masterpage.cshtml" voglio avere una vista parziale che contenga una casella di testo e un pulsante.
La ricerca sta cercando il titolo degli articoli, se il testo contiene un titolo di articoli deve visualizzare tali elementi.
Quando viene inviato un testo, lo @renderbody()
dovrebbe mostrare una vista con gli articoli.
La mia domanda è come posso fare questo in un buon modo? che cosa è un approccio buono e facile?
Finora ho fatto questo:
Creato un metodo nel mio repository che fa la funzione di ricerca:
public List<News> Search(string query)
{
var queryz = db.News.Where(x => x.Title.Contains(query));
return queryz.ToList();
}
Ora, quando si tratta di mio Searchcontroller im po 'perso come fare questo. Beacuse one actionresult deve essere la partialview che ha un parametro di query stringa e l'altro che contiene una vista che visualizzerà gli elementi?
Quello che ho fatto in questo momento sta avendo l'intero processo in stesso ActionResult: alot
Repository rep = new Repository();
[HttpPost]
public ActionResult Search(string query)
{
var searchlist = rep.Search(query);
var model = new ItemViewModel()
{
NewsList = new List<NewsViewModel>()
};
foreach (var NewsItems in searchlist)
{
FillProductToModel(model, NewsItems);
}
return View(model);
}
private void FillProductToModel(ItemViewModel model, News news)
{
var productViewModel = new NewsViewModel
{
Description = news.Description,
NewsId = news.Id,
Title = news.Title,
link = news.Link,
Imageurl = news.Image,
PubDate = news.Date,
};
model.NewsList.Add(productViewModel);
}
qualsiasi tipo di aiuto è apprezzato!
avvolgere la casella di ricerca in un modulo –
il partialview? – Obsivus
sicuro. più importante la tua casella di ricerca. –