我有一个嵌套Gridview的页面,我试图通过从外部网格的每一行拉一个字符串值来填充内部网格。当我尝试将值从外部网格传递给字符串变量时,我得到“将'String'转换为'System.IFormatProvider'时出错”错误。我正在使用以下代码将gridview单元格值存储到变量:
Dim Svc_Name As String = grdOuterGridView.DataKeyNames(e.Row.RowIndex).ToString("THIRD_PARTY_SERVICE")
谁能告诉我这里我做错了什么?感谢。
答案 0 :(得分:1)
DataKeysNames已经是一个字符串数组,你不需要ToString(....)部分。
Dim Svc_Name As String = grdOuterGridView.DataKeyNames(e.Row.RowIndex)
实际上你的错误来自ToString(“THIRD_PARTY_SERVICE”)。带有一个参数的ToString()重写需要一个实现IFormatProvider
接口的对象,但当然一个字符串没有这个接口,因此错误。但是,在String上调用ToString()无效,因为您可以从MSDN docs
返回String的这个实例;没有进行实际转换。