如何将Container.DataItem作为参数传递?
我正在使用转发器控件,我正在尝试传递一个参数:
它基本上是在呼唤:
public string SomeFunction(long id) { return "Hello"; }
因为我收到错误,我无法实现此目的:
错误CS1502:最好的重载方法匹配… SomeFunction(long id)…有一些无效的参数。
有任何想法吗?
你需要将结果转换为long,所以:
<%# SomeFunction( (long)DataBinder.Eval(Container.DataItem, "Id") ) %>
另一种方法是做这样的事情:
<%# SomeFunction(Container.DataItem) %>
和…
public string SomeFunction(object dataItem) { var typedDataItem = (TYPED_DATA_ITEM_TYPE)dataItem; // DO STUFF HERE WITH THE TYPED DATA ITEM return "Hello"; }
这至少允许您使用数据项(DataRows等)中的多个值。
我认为你应该抛出DataBinder.Eval(Container.DataItem,“Id”)。
我成功地使用了它。 数据源是List集合。
OnClientClick='<%# "return myFunction(\""+ Container.DataItem + "\");" %>'
和javascript函数……
function myFunction(imgPath) { alert(imgPath); }
- 使用ASP.Net webapi的Angular.js $资源?
- validation视图状态MAC失败-View状态错误
- Facebook Connect使用ASP.NET成员资格提供程序与站点集成
- Google通讯录API – 获取访问令牌(oauth)后
- 允许按列gridview排序
- 如何使.net HttpClient使用http 2.0?
- 如何确保我创建的filedownload是UTF-8? (而不是没有BOM的UTF-8)
- ASP.NET 5 EntityFramework.Core 7.0.0-rc1-final issue – 编译器想要引用7.0.0.0,但未找到
- 找出是否有人登录gmail,yahoo和facebook