0

也许它会重复,但我没有找到任何可以帮助我解决问题的东西。

我有可以有不同 ViewModels 的控制器:

我想做类似的事情:

[HttpPost]
public ActionResult ExportToExcell(ILeadsViewModel model)
{


}

我的视图模型是:

public class ViewModelTest1 : ILeadsViewModel

public class ViewModelTest2 : ILeadsViewModel

public class ViewModelTest3 : ILeadsViewModel

有没有机会为我的 ViewModel 配置 Unity 返回正确的实例?如果可能怎么办?如果可能,但您不建议这样做,请解释原因。

谢谢。

4

1 回答 1

1

ILeadsViewModel您可以为将根据某些请求属性返回正确视图模型的类型编写自定义模型绑定器。这an example是一个自定义模型活页夹。在这个例子中,我使用了Activator.CreateInstance在具体视图模型的请求中存在的 Type 属性,但您可以使用 Unity 或其他任何东西。但是请记住,您应该在请求中包含一些信息,这些信息将允许模型绑定器知道要返回哪个视图模型的具体实例。

于 2012-12-02T10:35:38.393 回答