You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

.NET Core 7 MVC多表单页面与控制器数据传递最优方案问询

.NET Core 7 MVC 开发疑问与多表单页面实现建议

技术栈合理性确认

我正在使用VS2022中的.NET Core 7 MVC模板构建简单Web门户,不确定该模板是否为当前推荐的技术栈方案。

页面绑定方式选择

聚焦MVC开发时,想了解页面绑定是推荐使用PageModels,还是采用我偏好的「简单模型结合Razor语法」的方式(微软相关文档未明确说明)。

核心问题:多表单设置页的状态维持

我正在开发一个包含多个表单的设置页,页面结构如下:

  • 团队名称表单及提交按钮(仅保存团队名称)
  • 当前团队成员列表
  • 按邮箱搜索用户的表单
  • 匹配搜索结果列表及「添加至团队」按钮

原以为表单提交时需将整个页面模型传递给控制器,处理逻辑后再返回修改后的模型至Index ActionMethod以维持页面状态,但未找到该方案的具体说明,也不确定其合理性。

实际遇到的问题:提交搜索表单时,仅能获取绑定的搜索属性,无法获取团队名称、成员列表等其他模型属性,若重新查询这些数据又显得低效,希望得到合理的实现建议。

示例模型代码

public class SettingsPageModel
{
    public SettingsPageModel() { }
    public SettingsPageModel(string teamName)
    {
        TeamName = teamName;
    }
    public SettingsPageModel(SearchModel searchModel)
    {
        SearchModel = searchModel;
    }
    public SettingsPageModel(string teamName, List<TeamMember> teamMembers, SearchModel searchModel)
    {
        TeamName = teamName ?? throw new ArgumentNullException(nameof(teamName));
        TeamMembers = teamMembers ?? throw new ArgumentNullException(nameof(teamMembers));
        SearchModel = searchModel ?? throw new ArgumentNullException(nameof(searchModel));
    }
    public string TeamName { get; set; } = string.Empty;
    public List<TeamMember> TeamMembers { get; set; } = new();
    public SearchModel SearchModel { get; set; } = new();
    public DialogModel? DialogModel { get; set; }
}
public class SearchModel
{
    public string? SearchTerm { get; set; }
    public List<User>? SearchedUsers { get; set; }
}

内容的提问来源于stack exchange,提问作者JoeTomks

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 09:01:09