我有一个包含450个字段的PDF表单,我将使用我的数据库中的数据来填写它。PDF中的每个字段都有唯一的名称,我可以进行如下映射:
switch (fieldname)
{
case "Name":
value = GetData(Name);
break; // Etc...
case "Date":
value = Date();
break;
default:
value = "";
break;
}
现在看起来这个问题会变得非常复杂,因为有450个分支,如果添加其他文档,它可能会急剧增长。解决这种问题的潜在模式是什么?本质上,我想将PDF字段绑定到数据库字段。
*编辑* 所以,假设我有一个巨大的开关语句,约有450个分支,用于路由PDF字段名称,如“Name”、“Address”、“Phone”,到正确的数据库查询以执行。除了根据最终用户选择的文档而变化的字段名称之外,我还可以用什么其他方法解决这个问题?
*最终编辑* 我思考了一天,并感谢所有人的建议,想出了一个解决方案。我有一个名为GetElement()的函数。它将PDF字段名称作为参数,并执行返回数据库列和另一个过程名称的映射的存储过程。然后,使用一些动态SQL,我传递要查找的过程名称和列,并返回结果。在这里很难选择正确的答案,但我会把功劳归给推动我最接近的那个人。