ASP.NET FormView 控件的全部目的是一次显示一条记录。那么如何将它绑定(bind)到单个记录?它提示说
Data source is an invalid type. It must be either an IListSource, IEnumerable, or IDataSource.
如果这是唯一的解决方案,我可以将我的对象包装在一个列表中。在此应用程序中,FormView 位于用户控件中,并且我在公共(public)方法中检索对象,即我没有使用数据源控件。我也没有在这里进行任何 2 路数据绑定(bind),在这种情况下我只使用 FormView 来保持一致的外观。
如果我按书阅读并将 FormView 绑定(bind)到返回记录列表的数据源,它实际上会检索所有记录并仅显示所选记录吗?
这是我最终在实用程序类中实现的内容:
public static IEnumerable<T> WrapInEnumerable<T>(T item)
{
return new T[] {item};
}
最佳答案
正如错误消息所说,DataSource 对象必须实现 IListSource、IEnumerable 或 IDataSource 才能工作。
如果您有一个未实现上述接口(interface)之一的对象 av 类型 A,那么您可以按照您的说法将您的对象包装在一个列表中:
C#
var myDataSource = new List<A> {myObject};
VB.NET
Dim myDataSource As List(Of A)(myObject)
关于asp.net - 如何将 ASP.NET FormView 绑定(bind)到单个记录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1119822/