【发布时间】:2012-08-16 18:07:51
【问题描述】:
这个问题与 ASP.Net 3.5 和 C# 有关
我正在从包含很多列的数据库构建一个 RSS 提要。
我需要在特定节点中格式化数据,并且内联处理会非常混乱。
我知道我可以将所有参数单独传递给子程序
<%# formatAddress(Container.DataItem["propertyName"],
Container.DataItem["propertyNumber"], ... ) %>
由于这些列最多有 20 个,我宁愿传递整行。
<%# formatAddress(Container.DataItem) %>
这将是理想的,然后我可以在后面的代码中挑选出我想要的列:
protected string FormattedAddress(object row)
{
DataRowView data = (DataRowView)row;
StringBuilder Address = new StringBuilder();
string Postcode = data["propertyPostcode"];
...
return Address.ToString();
}
我收到错误无法将“System.Data.Common.DataRecordInternal”类型的对象转换为“System.Data.DataRowView”类型。
以前,我使用的是受保护的字符串 FormattedAddress(DataRowView row),但这也没有用。
有什么线索吗?
【问题讨论】:
标签: c# exception .net-3.5 itemtemplate datarowview