2013-05-07 7 views
0

Я хочу использовать одно действие в другое действие для получения некоторых значений, как:использовать одно действие контроллера в другое действие

[HttpPost] 
     public ActionResult Playlist(PageInfo p, long ID) 
     { 
      //long playid=Convert.ToInt64(p.Where); 
      var q = from client in my.Clients(0, 0) 
        join pl in db.Playlists on client.ClientId equals pl.ClientId 
        select new SimpleViewModel 
        { 
         Sequence=pl.PlaylistContentSequenceId, 
         PlaylistID = pl.PlaylistId, 
         PlaylistContentID=pl.ContentId 
        }; 
      return Json(q.ToPage(p, "Sequence"), JsonRequestBehavior.DenyGet); 
     } 

     [HttpPost] 
     public ActionResult Save(List<ItemEditViewModel> data,long playlistid, List<long> deleted,string Title) 
     { 
      var playlist = db.Playlists.Include("PlaylistContents").FirstOrDefault(x => x.PlaylistId == playlistid); 



      for (int i = 0; i < playlist.PlaylistContents.Count; i++) 
      { 
       if(deleted.IndexOf(playlist.PlaylistContents[i].PlaylistContentId)>-1){ 
        playlist.PlaylistContents.Remove(playlist.PlaylistContents[i]); 
       } 
      } 
      db.SaveChanges(); 
      long ID=playlistid; 
      return Playlist(new PageInfo(),ID); 

     } 

, как вы видели в коде, который после сохранения содержимого в базу данных, Контроллер списка воспроизведения должен использоваться для возврата данных Json.

+0

Что не работает? –

ответ

0

вместо

return Playlist(new PageInfo(),ID); 

попробовать

return RedirectToAction("Playlist", new {p = new PageInfo(), ID = ID}); 
Смежные вопросы