gpt4 book ai didi

c# - ASP.NET MVC - 通过数据库动态填充表单

转载 作者:太空狗 更新时间:2023-10-29 19:46:18 26 4
gpt4 key购买 nike

我正在将搜索应用程序从经典 ASP 移植到 ASP.NET MVC2。其中一个页面是一个动态填充的搜索表单,它分为 4 个类别,每个类别有 2 行。

客户端可以取消选中每个类别的选项。发生这种情况时,每个类别都会从上到下、从左到右动态重新填充。编写经典 ASP 版本的人设置了一个子例程,该子例程搜索数据库(每个搜索字段都有一个 bool 字段),然后返回一个数组。然后,他获取数组并调用另一个循环遍历数组的子例程,然后生成每个类别。

现在,我唯一能想到的就是创建一个模型,该模型具有针对每个类别的方法,每个类别都返回一个列表。一个简单的例子是:

class SearchPageOrganizer {

// Declare SearchFields object
private SearchFields fields;

// Contructor; instantiates SearchFields object
public SearchPageOrganizer(SearchFields searchFields) {
this.fields = searchFields;
}

// Gets a list of fields active in the characteristics category
public List<String> GetCharactersticsList() {
List<String> list = new List<String>();

// Check if the Color field is active
if (fields.Color) {
list.Add("Color");
}

// Check if the Size field is active
if (fields.Size) {
list.Add("Size");
}

// Return the list
return list;
}
}

然后我可以做的是根据每行的大小拆分列表,然后遍历每个列表并调用能够根据名称参数动态呈现 HTML 的用户控件。

这种技术的问题在于,出于某种奇怪的原因,感觉我没有以最简单的方式来做这件事。对于阅读本文的任何人,是否有更简单的方法来实现它?

谢谢!

最佳答案

这是我一段时间以来一直想调查的事情。涉足 Rails 后,我被绑定(bind)到模型的 View 宠坏了。

似乎在 MVC 空间中有一个名为 Html.EditorForModel() 的助手。这个助手为 View 绑定(bind)到的模型生成一个表单。我不确定它在您的情况下会做什么,但看到输出肯定会很有趣,也许它可能会给您一些个人实现的想法。

祝你好运!

关于c# - ASP.NET MVC - 通过数据库动态填充表单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3596563/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com