在asp.net 中数据绑定表达式写成<%#eval(“name”)%> ,当“name”字段在所查询的SQL语句中不存在时,此时会提示:DataBinding:“System.Data.DataRowView”不包含名为“Name”的属性。我想要实现的是,出现检测不到某个字段时,直接将其替换掉,以下是我写的代码,似乎没有起到作用:html代码:<%if (!string.IsNullOrEmpty(checkbaindName("Name"))){%><td><%#Eval("Name") %></td><%}else{string s = "<td>你没有查看权限</td>";Response.Write(s);}%>cs代码:public string checkbaindName(string str_name){if (str_includes.IndexOf(str_name) > 0){return str_name;}else{return "";}}
1 回答
扬帆大鱼
TA贡献1799条经验 获得超9个赞
首先,不知道你这(str_includes.IndexOf(str_name) > 0)这个判断是否可靠,如果你使用了DataTable,那为什么不之间检查DataTable是否含有这个字段
其次,你又用了Eval输出,有用了Response.Write输出是为啥
再次,你说没起作用具体表现如何,截图示意
要排查问题其实蛮简单,逐步调试即可
- 1 回答
- 0 关注
- 497 浏览
添加回答
举报
0/150
提交
取消