Asp.net 从Eval中的字符串中删除字符

Asp.net 从Eval中的字符串中删除字符,asp.net,string,eval,Asp.net,String,Eval,我正在尝试删除.NET代码中字符串的最后2个字符,该代码使用Eval获取字符串名称。这段代码是不对的,但这正是我想做的 .Net代码,其中我的DataKeyName=测试: NavigateUrl ='<%#"~/example.aspx?test=" + ((string)Eval("test")).Remove(Eval("test").length -2)) %>' NavigateUrl='' 这显然是错误的,但希望能传达出我的意图。所以如果test=hello!!,

我正在尝试删除.NET代码中字符串的最后2个字符,该代码使用Eval获取字符串名称。这段代码是不对的,但这正是我想做的

.Net代码,其中我的DataKeyName=测试:

 NavigateUrl ='<%#"~/example.aspx?test=" + ((string)Eval("test")).Remove(Eval("test").length -2)) %>' 
NavigateUrl=''

这显然是错误的,但希望能传达出我的意图。所以如果test=hello!!,我希望我的navigateURL是/example.aspx?test=hello(最后2个字符,在本例中,被删除)

在codebehind
getNewString(object str)中创建一个函数

然后像这样调用这个函数

NavigateUrl ='<%# getNewString(Eval("test")) %>'
NavigateUrl=''
试试这个:

NavigateUrl ='<%#"~/example.aspx?test=" + Eval("test").ToString().Substring(0, Eval("test").ToString().Length - 2) %>'
NavigateUrl=''

谢谢!我认为另一个答案也行得通,但这使它在.Net代码中不那么混乱
NavigateUrl ='<%#"~/example.aspx?test=" + Eval("test").ToString().Substring(0, Eval("test").ToString().Length - 2) %>'