Значение объекта внутри viewmodel, потерянного при перенаправлении на действие в asp.net mvc 2.0? - PullRequest
0 голосов
/ 14 июля 2010

У меня есть модель представления -

public class MyViewModel
{
   public int id{get;set;};
   Public SomeClass obj{get;set;};
}
public class SomeClass
{
   public int phone{get;set;};
   public int zip{get;set;};
}

Так что на моем контроллере, когда я отправляю обратно MyViewModel, он имеет все значения для всех полей ... но когда я делаю

return RedirectoAction("SomeAction",vm);//where vm->MyViewModel object that has all values...

он теряет значения для объекта SomeClass? ... может кто-нибудь помочь мне

1 Ответ

4 голосов
/ 14 июля 2010

Второй аргумент RedirectToAction - это значения маршрута, а не модель представления.

Итак, если вы делаете:

return RedirectoAction("SomeAction", new {Foo = "Bar"});

Затем с привязкой модели по умолчанию вы будете перенаправлены на этот URI:

http://site/ControllerName/SomeAction?Foo=Bar

Помните, как перенаправление работает по проводам. Вы не можете передать модель. Вы можете только изменить URI.

...