0

我在 asp.net MVC 4 应用程序中有一个具有以下属性的表(和模型):

电视桌

高度宽度深度类型品牌成本

当用户回答有关电视空间的问题时,我会进行 ajax 调用以确定哪些类型可以适合他们指定的空间。他们想要哪种类型的电视类型是以下问题,因此可能需要禁用某些选项。适合空间的类型的 SQL 是“从电视中选择不同的类型,其中高度 < @height 和宽度 < @width 和深度 < @depth”。我应该: 1. 创建一个新模型,我从 TV 控制器调用它只是为了返回不同的类型 2. 向我从 TV 控制器调用的 TV 模型添加一个方法,它只返回一个字符串列表,其中包含适合的类型

4

1 回答 1

0

取决于您要根据用户的选择向用户显示的内容”,例如

  1. 如果您想显示电视名称 + 其描述,则返回电视型号列表将是有意义的。

  2. 如果您只想在组合框中显示电视名称列表,则返回字符串列表就足够了。

恕我直言,在这两种情况下调用新操作都是有意义的。

编辑

对于 2 - 我想返回一个字符串列表 - 我应该为此创建一个新的数据模型,还是在现有的 TV 数据模型中添加一个返回字符串列表的方法?

为了扩展上述查询,由于您的问题尚不清楚(至少我没有将其可视化),因此我将假设几件事。

案例 1:您正在向用户显示一个不包含 TVModel 列表的视图“TVSelection”。在此视图中,您希望用户输入三个值,即宽度、高度、深度。现在,当用户输入这些值时,她可以提交表单,或者您也可以在 Lost Focus 事件中获取电视品牌名称列表。无论如何,问题是您是通过填充组合框来更新现有视图还是正在显示新视图。我假设您正在通过进行 AJAX 调用来更新现有的“TVSelection”视图。在这种情况下,您只需调用控制器(显示“TVSelection”视图)上的一个方法,该方法返回一个电视品牌名称列表。

案例 2:您正在显示已经有一个 TVModel 对象列表的“TVSelection”视图,并且您在选择必填字段(过滤)时动态更新它。在这种情况下,您可以在 TVModel 本身中添加一个方法,以仅过滤与用户选择匹配的名称。

我发现这些链接相关1 & 2

希望这是有道理的。

如果这不能回答您的问题,请在您的问题中添加更多详细信息。

于 2013-09-10T15:26:25.140 回答