Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc Asp.net MVC 4运行时加载视图渲染器_Asp.net Mvc - Fatal编程技术网

Asp.net mvc Asp.net MVC 4运行时加载视图渲染器

Asp.net mvc Asp.net MVC 4运行时加载视图渲染器,asp.net-mvc,Asp.net Mvc,如何在MVC4中实现这一点 我有一个如下的动物列表 姓名国内 凯特耶斯维 Dogyesview 虎视眈眈 点击视图将呈现相应动物的生物信息。我必须为每种动物配置不同的视图。我将有一个数据库表,其中针对每个动物配置渲染器,如下所示 动物型 猫渲染器 狗狗渲染器 虎虎 我应该用吗 不同的控制器作为不同的渲染器类型,或 不同的局部视图作为不同的渲染器类型 注意:我不想使用Switch case语句 渲染器将继承自基本类型AnimalRenderer:IAnimalRenderer。为什么每个动物需要

如何在MVC4中实现这一点

我有一个如下的动物列表

姓名国内 凯特耶斯维 Dogyesview 虎视眈眈

点击视图将呈现相应动物的生物信息。我必须为每种动物配置不同的视图。我将有一个数据库表,其中针对每个动物配置渲染器,如下所示 动物型 猫渲染器 狗狗渲染器 虎虎 我应该用吗

不同的控制器作为不同的渲染器类型,或 不同的局部视图作为不同的渲染器类型 注意:我不想使用Switch case语句


渲染器将继承自基本类型AnimalRenderer:IAnimalRenderer。

为什么每个动物需要不同的视图?是否有基类animal,然后继承了类Dog、类Cat等?我通常会为控制器中的每个动物创建一个视图模型。您可以使用这种方法,让控制器为每种动物类型指定一个局部视图名称。或者让接口定义视图名称,但这将打破模型和视图逻辑之间的分离。罗伯特,我需要不同的视图,因为每个视图的HTML将非常不同。斯蒂芬,这是真的,基类将是动物类和继承类狗,猫等。。。。我必须根据用户选择在运行时决定渲染器,如果用户选择dog,数据库查询将根据类型找出需要加载的渲染器。希望我已经很好地解释了我的情况。