我正在创建一个具有dropdownlist
for dept 的表单。
我工作的地方只有一个领域,该领域本身有大约 50 个部门。如果我查询该字段并将其返回到 CS 文件上的字符串,我如何将不同部门全部分解为绑定到 ddl?
有些部门有两个名称,两个名称之间有一个空格。
任何没有规范化表格的事情都会导致一些黑客攻击。我会考虑创建一个新表:部门。在那里,您将每个值存储在自己的行中。这将使数据检索变得更加容易,就像@Vulcronos 所说的那样,更容易加入另一个表。
“正确”的答案是修改源以正确分隔部门名称。
如果您不能这样做,并且列表有些静态,您可以使用“例外列表”来指示应该保持在一起的部门:
string[] knownDepartments = new []
{
"Human Resources",
"Community Services",
etc.
};
然后在解析之前从源字符串中提取它们:
foreach(string dept in knownDepartments)
departments = departments.Replace(dept,"");
然后解析其余部门(并添加已知部门):
var departmentList = departments.Split(' ')
.Union(knownDepartments)
.ToList();