既存の を変更する必要がある状況がありDataTable
ます。@Shai Cohen がコードを提供しましたが、ライブ データが異なるため、変更中の列で例外 MaxLimit 違反が発生します。
コードの with を変更しようとしましたが、エラーが発生し続けます。これがコードです(私のコメントを参照してください):
public DataTable PrepareDataTable(DataTable dtResults)
{
string[] subCategories = new string[3] {"Critical Down Time", "Critical Outage", "Total Repair Time"};
DataTable dtOutput = dtResults.Clone();
DataRow drOutput = null;
DataRow[] drResults = null;
var categories = dtResults.AsEnumerable().Select(r => r["Category"]).Distinct().ToList();
foreach (string category in categories)
{
for (int i = 0; i < subCategories.Length ; i++)
{
drOutput = dtOutput.NewRow();
drOutput["Category"] = category;
drOutput["SubCategory"] = subCategories[i];
drResults = dtResults.Select(String.Format("Category = '{0}' AND SubCategory = '{1}'", category, subCategories[i]));
if(drResults.Length > 0)
{
foreach(DataColumn column in dtResults.Columns)
{
drOutput[column.ColumnName] = drResults[0][column.ColumnName];
**I've tried** drOutput[column.MaxLength] = Unit.Pixel(500);
**or just a number but no use**
}
}
**Error >>>** dtOutput.Rows.Add(drOutput);
}
drOutput = dtOutput.NewRow();
dtOutput.Rows.Add(drOutput);
}
return dtOutput;
}