c# - 在 C# 中为数据行分配新值

标签 c#

我正在查看数据表并逐行获取,

我有 50 个长度值。我想将第 10 个长度值分配为“文本”。

但赋值后并没有存入datarow

foreach (DataRow row in dtSource.Rows)
{
    if (row.ItemArray[17].ToString().Length > 32)
     {
         string ss=   "text";  
         row.ItemArray[17] = ss; // here it is not added in itemarray
     }
}

最佳答案

DataRow.ItemArray即时创建一个包含所有字段的新数组。因此,当您修改此数组时,您不会修改 DataRow 本身。您应该使用 DataRow 索引器:

row[17] = ss;

当您需要一个数组中的所有对象时,或者当您希望通过为该属性分配一个数组来一次分配整行的字段时,您可以使用 ItemArray

关于c# - 在 C# 中为数据行分配新值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50157833/

相关文章:

c# - WebSocket.CreateServerBuffer 与 WebSocket.CreateClientBuffer

c# - Azure 文件存储 SAS token - 错误 403

c# - 将过程结果从 Entity Framework 传递到 View

c# - 使用反射创建通用 IList 实例

c# - C#、F#、IronPython 和 IronRuby 的集成

c# - 使文本框隐藏在 ASP.NET 中

c# - 从另一个 cs 文件填充公共(public)字符串

c# - 非静态类中的私有(private)静态变量是否可用于整个应用程序?

c# - 如何在扩展/方法文件中使用 Invoke 方法?

c# - 如何实现MVC寻呼机?