Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 以正确的方式分离数据_C#_Sql Server - Fatal编程技术网

C# 以正确的方式分离数据

C# 以正确的方式分离数据,c#,sql-server,C#,Sql Server,让我们设想以下场景: 我有一个桌子类型和一个桌子的东西。每个thing都有一个通过Things.TypeId列定义的类型,该列在Types.Id列上有一个外键 现在我想通过我的C代码访问这些类型,C代码将这些类型加载到一个列表中,以便在我的应用程序中使用它 现在让我们考虑一个方法,它尝试将所有类型为1的东西加载到我的应用程序中 从TypeId={0}中选择* 我现在在哪里可以获得类型1的TypeId?通常情况下,枚举将适用于此,但我们不能使用枚举,因为类型存储在我的数据库中,并在运行时检索 如何

让我们设想以下场景:

我有一个桌子类型和一个桌子的东西。每个thing都有一个通过Things.TypeId列定义的类型,该列在Types.Id列上有一个外键

现在我想通过我的C代码访问这些类型,C代码将这些类型加载到一个列表中,以便在我的应用程序中使用它

现在让我们考虑一个方法,它尝试将所有类型为1的东西加载到我的应用程序中

从TypeId={0}中选择*

我现在在哪里可以获得类型1的TypeId?通常情况下,枚举将适用于此,但我们不能使用枚举,因为类型存储在我的数据库中,并在运行时检索


如何处理此问题?

您可以通过连接来完成此操作

select things.* 
from things 
join type on thing.typeID = type.typeID 
where type.name = 'one'

或者,当程序启动时,您可以使用typeID键和name值将type加载到字典中。您还可以将DictionaryList绑定到组合框,在组合框中显示值,但使用键。

谢谢您的回答。但这意味着将冗余数据保存为数据库中的“一”,而代码中的常量问题是“一”。然后看我回答的第二部分。在程序加载时,将键和值检索到集合中。NET中的大量集合。字典只是其中之一。