如何在MVC中的PartialViewResult中返回一个方法?

时间:2018-05-15 23:41:04

标签: asp.net-mvc

我想在我的控制器PartialViewResult中返回该方法。目前,Load(id)PartialViewResult中没有给我任何内容。

public PartialViewResult Partial(string id)
    {          
       var model = new ClsS();        
       Load(id);
       return PartialView("_Partial", model);     
    }
  public void Load(string id)
   {
      Sdetails sdetails = new Sdetails();
      var model = new ClsS();
      model.Name = sdetails.Namehead(id);
      model.Link = sdetails.LinkName(id);         
   }

1 个答案:

答案 0 :(得分:2)

void返回类型在部分视图中不分配任何内容,因为属性赋值发生在Load()方法内,并在方法执行完成后立即处理(更改未应用于ClsS实例内部局部视图方法)。请在ClsS方法中使用Load()类作为返回类型:

public ClsS Load(string id)
{
   var sdetails = new Sdetails();
   var model = new ClsS();
   model.Name = sdetails.Namehead(id);
   model.Link = sdetails.LinkName(id); 

   return model; // return modified ClsS instance       
}

然后通过在部分视图方法中调用model方法来分配Load

public PartialViewResult Partial(string id)
{          
   var model = Load(id);
   return PartialView("_Partial", model);     
}