C# 包含值列表的数据字段

C# 包含值列表的数据字段,c#,asp.net,sql,C#,Asp.net,Sql,我正在为dept创建一个具有dropdownlist的表单 我工作的地方只有一个有50个部门的领域。如果我查询该字段并将其返回到CS文件上的字符串中,我如何将不同的部门分解为绑定到ddl 有些部门有两个名称,两个名称之间有一个空格。正确的答案是修改来源,以正确划分部门名称 如果您不能做到这一点,并且如果列表有些静态,您可以使用“例外列表”来指示应该保持在一起的部门: string[] knownDepartments = new [] { "Human Resource

我正在为dept创建一个具有
dropdownlist
的表单

我工作的地方只有一个有50个部门的领域。如果我查询该字段并将其返回到CS文件上的字符串中,我如何将不同的部门分解为绑定到ddl

有些部门有两个名称,两个名称之间有一个空格。

正确的答案是修改来源,以正确划分部门名称

如果您不能做到这一点,并且如果列表有些静态,您可以使用“例外列表”来指示应该保持在一起的部门:

string[] knownDepartments = new [] 
    {
        "Human Resources",
        "Community Services",
        etc.
    };
然后只需在解析之前从源字符串中提取它们:

foreach(string dept in knownDepartments)
    departments = departments.Replace(dept,"");
然后解析其余的部门(并附加已知的部门):


任何不规范化表格的行为都会导致某种程度的混乱。我会考虑创建一个新的表:部门。在这里,您将每个值存储在自己的行中。这将使数据检索变得更加容易,就像@Vulcronos所说的那样,连接到另一个表上也更加容易。

部门名称之间除了空格之外还有其他字符吗?不仅仅是“单词”,而且其中一些部门由两个单词组成。你能分辨出一个部门是两个单词吗?使用string.Split(“”)将拆分每个单词,但无法将随机单词保持在一起。你真的需要通过将每个部门放在一个单独的行中来修复数据库。你对db中的数据没有任何控制吗?@Vulcronos,或者在每个公司名称后面放一个逗号(,)分隔符-不管中间有多大的空格。谢谢大家的帮助和输入,我要建立一个新的dept表,并至少清理一下这个db中的小混乱
var departmentList = departments.Split(' ')
                                .Union(knownDepartments)
                                .ToList();