当前位置:  开发笔记 > 编程语言 > 正文

在c#中按列名检查DataRow是否存在?

如何解决《在c#中按列名检查DataRow是否存在?》经验,为你挑选了3个好方法。

我想做这样的事情:

   private User PopulateUsersList(DataRow row)
        {
            Users user = new Users();
            user.Id = int.Parse(row["US_ID"].ToString());
            if (row["US_OTHERFRIEND"] != null)
            {
                user.OtherFriend = row["US_OTHERFRIEND"].ToString();
            }
            return user;
        }

但是,我得到一个错误US_OTHERFRIEND,说不属于该表.我想简单地检查它是否为null,然后设置值.

有没有办法做到这一点?



1> Kibbee..:

你应该试试

if (row.Table.Columns.Contains("US_OTHERFRIEND"))

我不相信该行本身有一个列属性.



2> 小智..:
if (drMyRow.Table.Columns["ColNameToCheck"] != null)
{
   doSomethingUseful;
{
else { return; }

虽然DataRow没有Columns属性,但它确实有一个Table可以检查列.



3> 小智..:

您可以使用数据表的DataColumnCollection来检查列是否在集合中.

就像是:

DataColumnCollection Columns = dtItems.Columns;

if (Columns.Contains(ColNameToCheck))
{
  row["ColNameToCheck"] = "Checked";
}

推荐阅读
小色米虫_524
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有