0
私はデータベースからのノートを表示するグリッドを持つビューを返すActionResultを持っています。同じページにはCreateNoteを呼び出すボタンがあり、新しいノートを追加できるPartialViewが返されます。これはすべて動作しますが、新しいノートを追加した後、ビューをグリッドを示すTabNotesに戻します。 私は使用しようとしましたActionResultを返すにはどうすればよいですか?
return Redirect(HttpContext.Request.UrlReferrer.AbsoluteUri);
これは間違ったページに行きます。代わりに、私はTabNotes ActionResultを返したいと思います。これは可能ですか?
public ActionResult CreateNote(
[ModelBinder(typeof(Models.JsonModelBinder))]
NoteModel Model, string cmd, long? itemId, string modelEntity)
{
if (cmd == "Save")
{
Model.meta.message = "Note saved";
//standard user = 1, needs to be changed to variable
test.Database.User User = UserRepository.GetUser(1);
Entity entity = NotesRepository.GetEntity("Phrase");
NotesRepository.StoreNote(Model.subject, Model.text, User, entity, itemId);
return Redirect(HttpContext.Request.UrlReferrer.AbsoluteUri);
}
Model.meta.modelname = "CreateNote";
Model.meta.JsViewModelType = "EditNoteModel";
Model.meta.PostAction = Url.Action("CreateNote", new { cmd = "Save", itemId = itemId});
return PartialView("CreateNotePartial",Model);
}
「
public ActionResult TabNotes([ModelBinder(typeof(Models.JsonModelBinder))]
TabNotesModel Model, string cmd)
{
Entity entity = NotesRepository.GetEntity(Model.meta.entity);
if (Model.meta.id.HasValue)
{
Model.meta.modelname = "TN" + Model.meta.entity + Model.meta.id.Value.ToString();
Dictionary<string, object> defaultValues = new Dictionary<string, object>();
defaultValues.Add("Entity", entity.EntityId);
defaultValues.Add("ItemId", Model.meta.id.Value);
Entity noteEntity = NotesRepository.GetEntity("Note");
var grid = UI.GetEntityFlexiGrid(noteEntity, true, true, true, true, defaultValues);
grid.buttons.Clear();
grid.title = "";
Model.Grid = grid;
Model.Grid.url = Url.Action("TabNoteData", new { id = Model.meta.entity, itemId = Model.meta.id.Value});
}
return View("TabNotes", Model);
}