c# - C# Datatable linq 条件检查
问题描述
我创建了如下所示的函数。一切正常,现在的挑战是我有一些场景,将构造函数“RadGridView grid”作为数据表是理想的。我正在寻找一个可以采用“RadGridView”输入类型或“Datatable”类型的构造函数——一种“通用”构造函数,如果可能的话?
public static void Export(RadGridView grid, string sheetName)
{
SaveFileDialog saveFileDialog1 = new SaveFileDialog();
saveFileDialog1.Filter = "Excel file |*.xlsx";
saveFileDialog1.Title = "Save";
saveFileDialog1.ShowDialog();
if (saveFileDialog1.FileName != "")
{
Microsoft.Office.Interop.Excel._Application app = new Microsoft.Office.Interop.Excel.Application();
Microsoft.Office.Interop.Excel._Workbook workbook = app.Workbooks.Add(Type.Missing);
Microsoft.Office.Interop.Excel._Worksheet worksheet = null;
app.Visible = false;
worksheet = workbook.Sheets["Sheet1"];
worksheet = workbook.ActiveSheet;
worksheet.Name = sheetName;
Microsoft.Office.Interop.Excel.Range aRange = worksheet.UsedRange;
workbook.Worksheets[1].Cells.NumberFormat = "@";
for (int i = 1; i < grid.Columns.Count + 1; i++)
{
worksheet.Cells[1, i] = grid.Columns[i - 1].HeaderText;
}
for (int i = 0; i < grid.Rows.Count; i++)
{
for (int j = 0; j < grid.Columns.Count; j++)
{
worksheet.Cells[i + 2, j + 1] = grid.Rows[i].Cells[j].Value.ToString();
}
}
aRange.Value = aRange.Value;
aRange.Cells.HorizontalAlignment = Microsoft.Office.Interop.Excel.XlHAlign.xlHAlignLeft;
worksheet.Columns.AutoFit();
workbook.SaveAs(saveFileDialog1.FileName, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlExclusive, Type.Missing, Type.Missing, Type.Missing, Type.Missing);
app.Quit();
}
}
提前致谢!
解决方案
我通过使用“动态”关键字解决了这个问题。
推荐阅读
- ios - 在组合中使用 Future 接收取消事件
- scala - 添加 Wartrremover 时包含任何警告的推断类型
- xml - 使用 XQuery 删除 xml 节点
- python - 如何在python中创建一个白色的空白opencv框架
- javascript - 这是通过 django 频道流式传输数据的好方法吗?
- ipv4 - 当我尝试计算子网时,我发现子网超出了 0-255 的范围
- microsoft-graph-api - Microsoft Graph:如何从团队用户那里获取“音频记录”、“视频记录”和“屏幕共享记录”?
- c++ - 我正在尝试获取此输出,但它显示来自网站的错误输出,但我的答案是正确的
- excel - 使用 VBA Excel 从带有空数据字段的列文本文件中读取数据
- postgresql - postgresql 按特定算法排序