title: ASP.Net MVC return View with new Instance of Model instead of using Redirect To Action
body: <p>I have a form view which uses a ViewModel. A new view is rendered by Action "New".  When this form is submitted I send back the info to action "Add". </p>
  
  <p>If all actions on DB are successful I want to refresh the view. I create a new instance of viewmodel from inside "Add" action and  do return  View("New",viewModel) . This does not refresh my view. All old values ( that were submitted) remains in the view. 
  Is there a way to refresh the page without RedirectToAction method.</p>
  
  <p>I read on another post that ModelState.Clear should not be used as it can have undesirable result.</p>
  
  <p>Thank you,</p>
  
  <p>Mar</p>
  
  <p>Edit 1 - Code Added</p>
  
  <pre><code>New
  
   public ActionResult New(string id)
          {
              var sysId= new Guid(id);
  .......
  ........
  
    string Details = pDto.Name + "(" + pDto.Code + ")";
  
              var vm= new ViewModel(id);
              vm.Details = Details;
  
              return View(vm);
          }
  
  
  
   public ActionResult Add(ViewModel vm)
          {
                          ViewModel vm= vm;
  
              if (ModelState.IsValid)
              {
  
                                var dto= _qRepository.GetFeaturesBy(viewModel.Code);
  
                  if (dto!= null)
                  {
  
                      ModelState.AddModelError("Code", "Code is already in Use.");
  
                      return View("New", viewModel);
                  }
  
                  _productService.AddFeature(..........);
                 // ModelState.Clear();  -- this works          
                  vm= new ViewModel(vm.pId) { Message = "Code" + viewModel.Code + " was added ......", Details = vm.Details };
  
              }
  
  
            return  View ("New", vm);
  
          }
  </code></pre>