我正在查询 mySQL 数据库并将响应存储在数据表中。我需要检查特定列以验证其是否为空或为空。下面是我正在做的事情
DataTable dataTab = new DataTable("ServiceOrderProtocol");
string strQuery = "select OrderID, ServiceOrder, ExternalID, Project_key, ProjectType from ServiceOrder;";
using (MySqlCommand cmd = new MySqlCommand(strQuery, conn))
{
using (MySqlDataAdapter sqlDa = new MySqlDataAdapter(cmd))
{
sqlDa.Fill(dataTab);
return dataTab;
}}
现在我不确定如何检查从存储在 dataTab 中的查询返回的字段 ExternalID 是否为 null 或为空。
最佳答案
如果您想知道表中的任何行是否在字段ExternalID
中包含空值:
bool anyNullExternalID = dataTab.AsEnumerable().Any(r => r.IsNull("ExternalID"));
如果你想知道是否全部为空:
bool allNullExternalID = dataTab.AsEnumerable().All(r => r.IsNull("ExternalID"));
如果你想要所有行都为空:
IEnumerable<DataRow> allNullExternalIDRows = dataTab.AsEnumerable()
.Where(r => r.IsNull("ExternalID"));
如果它不是 int
(顾名思义)但是一个 string
你想包括 null
和一个空字符串,附加 || string.IsNullOrEmpty(r.Field<string>("ExternalID"))
关于c# - 在数据集中寻找字段 C#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43760993/