C# 在DB中存储表单的必填字段

C# 在DB中存储表单的必填字段,c#,asp.net-mvc,forms,C#,Asp.net Mvc,Forms,我有一个包含多个输入的HTML表单。必填字段由表单中的一个组合框控制。这意味着根据组合动态分配所需字段 现在我在代码中控制这种行为,验证函数检查是否所有必填字段(根据组合的属性)都已填充,否则必填字段将显示为红色 对我来说,这种方法有两个缺点: 服务器上有一个重载,检查表单的任何更改,是否填写了必需的字段 我无法生成视图来定义用户所需的字段。一切都在源代码中 我一直在考虑如何在数据库中存储这些信息来解决这两个问题,但所有的解决方案都迫使我在数据库中存储属性/字段的名称,这些名称将来可能会发生变化

我有一个包含多个输入的HTML表单。必填字段由表单中的一个组合框控制。这意味着根据组合动态分配所需字段

现在我在代码中控制这种行为,验证函数检查是否所有必填字段(根据组合的属性)都已填充,否则必填字段将显示为红色

对我来说,这种方法有两个缺点:

  • 服务器上有一个重载,检查表单的任何更改,是否填写了必需的字段
  • 我无法生成视图来定义用户所需的字段。一切都在源代码中
  • 我一直在考虑如何在数据库中存储这些信息来解决这两个问题,但所有的解决方案都迫使我在数据库中存储属性/字段的名称,这些名称将来可能会发生变化。目前还不清楚如何将这些信息传播到ViewModels中

    你有什么建议吗?你如何解决这个反复出现的问题

    提前谢谢


    该应用程序是在ASP.NETMVC上开发的,作为注释,第1点不应被视为缺点。最好同时进行两种验证:客户端和服务器端。客户端验证为您提供快速响应,并且不向服务器收费。服务器端验证可保护您免受恶意用户的攻击:同意。我不打算删除服务器验证,因为这些对象可能来自比Web UI更多的来源。但我更愿意只在提交(或发送)时检查服务器,而不是每次更改表单以更新UI信息。最好同时进行两种验证:客户端和服务器端。客户端验证为您提供快速响应,并且不向服务器收费。服务器端验证可保护您免受恶意用户的攻击:同意。我不打算删除服务器验证,因为这些对象可能来自比Web UI更多的来源。但我更愿意只在提交(或发送)时检查服务器,而不是每次更改表单以更新UI信息。