无法隐式转换类型';System.Collections.Generic.List<>';到'
本文关键字:List Generic lt gt Collections System 类型 转换 | 更新日期: 2023-09-27 18:27:38
我用XML在listview CRUD中编写应用程序。
将行添加到列表视图时遇到问题。尝试转换列表<>时出现错误到对象。
这是我的代码:
public IEnumerable<object> GetRows()
{
List<DataLstViewEmail> rows = new List<DataLstViewEmail>();
if (File.Exists("MyData.xml"))
{
// Create the query
var rowsFromFile = from c in XDocument.Load(
"MyData.xml").Elements(
"Data").Elements("Rows").Elements("Row")
select c;
// Execute the query
foreach (var row in rowsFromFile)
{
rows.Add(new DataLstViewEmail(row.Element("col1").Value,
row.Element("col2").Value));
}
}
return rows;
}
您应该执行
public List<DataLstViewEmail> GetRows()
{
而不是
public IEnumerable<object> GetRows()
{
除非T
是值类型,否则每个List<T>
都是IEnumerable<object>
。我怀疑DataLstViewEmail
是一个结构体。
您可以简单地将List<T>
强制转换为IEnumerable<object>
。只需更改退货声明
return rows.Cast<object>();