MVCToolKit中HtmlHelper.ActionLink的BUG?
生活随笔
收集整理的這篇文章主要介紹了
MVCToolKit中HtmlHelper.ActionLink的BUG?
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
分頁時
????<%?if?(ViewData.Accounts.IsPreviousPage)?{?%>
????????<%=Html.ActionLink<SpeakOutFreely.Controllers.ManageController>(c?=>?c.List(ViewData.Accounts.PageIndex?-?1),?"Previous")%>
????<%?}?%>
????<%?if?(ViewData.Accounts.IsNextPage)?{?%>
????????<%=Html.ActionLink<SpeakOutFreely.Controllers.ManageController>(c?=>?c.List(ViewData.Accounts.PageIndex?+?1),?"Next")%>
????<%?}?%>????第一次點下一頁(Next)生成的HTML
http://localhost:64701/Manage/List/1
再點一次下一頁(Next)
生成的URL
http://localhost:64701/Manage/List/1/2
應當是
http://localhost:64701/Manage/List/2 才對!
汗,直接The resource cannot be found. 了...
搜了下。
http://www.getknow.taniocha.org/autor-53-1.html
[quote]
Bug 1
If I create a controller action as follows...public void List(int category)... and use the MVCToolkit HtmlHelper.ActionLink<T> as follows...<%= Html.ActionLink<ProductController>( x => x.List(Category), "View Products for this category" ) %>... it generates the URL http://server/Product/List/1 instead of http://server/Product/List/?category=1 and when i browse to the URL it says "A value is required for parameter 'category' in action 'List'"[this is due to LinkExtensions.BuildQueryStringFromBLOCKED EXPRESSION always assuming the first parameter should be simply appended to the url]
?Bug 2 If I create a controller action as follows...public void View(int Id)... and use the MVCToolkit HtmlHelper.ActionLink<T> as follows...<%= Html.ActionLink<ProductController>( x => x.View(ProductId), "View Product" ) %>... it correctly generates the URL http://server/Product/View/1. However, when you navigate to that URL the same link now becomes http://server/Product/View/1/1. [this is because, in LinkExtensions.BuildUrl(), the call to UrlHelper.Action() parses the current URL and includes any current values (like Id) if it's a call to the same action. So maybe this is a bug with the way UrlHelper.Action works?? ]
[/quote]
只能這樣寫了..郁悶...
?<a?href="/Manage/List/<%=?ViewData.Accounts.PageIndex-1?%>"">上一頁</a>
??<a?href="/Manage/List/<%=?ViewData.Accounts.PageIndex+1?%>"">下一頁</a>
????<%?if?(ViewData.Accounts.IsPreviousPage)?{?%>
????????<%=Html.ActionLink<SpeakOutFreely.Controllers.ManageController>(c?=>?c.List(ViewData.Accounts.PageIndex?-?1),?"Previous")%>
????<%?}?%>
????<%?if?(ViewData.Accounts.IsNextPage)?{?%>
????????<%=Html.ActionLink<SpeakOutFreely.Controllers.ManageController>(c?=>?c.List(ViewData.Accounts.PageIndex?+?1),?"Next")%>
????<%?}?%>????第一次點下一頁(Next)生成的HTML
http://localhost:64701/Manage/List/1
再點一次下一頁(Next)
生成的URL
http://localhost:64701/Manage/List/1/2
應當是
http://localhost:64701/Manage/List/2 才對!
汗,直接The resource cannot be found. 了...
搜了下。
http://www.getknow.taniocha.org/autor-53-1.html
[quote]
Bug 1
If I create a controller action as follows...public void List(int category)... and use the MVCToolkit HtmlHelper.ActionLink<T> as follows...<%= Html.ActionLink<ProductController>( x => x.List(Category), "View Products for this category" ) %>... it generates the URL http://server/Product/List/1 instead of http://server/Product/List/?category=1 and when i browse to the URL it says "A value is required for parameter 'category' in action 'List'"[this is due to LinkExtensions.BuildQueryStringFromBLOCKED EXPRESSION always assuming the first parameter should be simply appended to the url]
?Bug 2 If I create a controller action as follows...public void View(int Id)... and use the MVCToolkit HtmlHelper.ActionLink<T> as follows...<%= Html.ActionLink<ProductController>( x => x.View(ProductId), "View Product" ) %>... it correctly generates the URL http://server/Product/View/1. However, when you navigate to that URL the same link now becomes http://server/Product/View/1/1. [this is because, in LinkExtensions.BuildUrl(), the call to UrlHelper.Action() parses the current URL and includes any current values (like Id) if it's a call to the same action. So maybe this is a bug with the way UrlHelper.Action works?? ]
[/quote]
只能這樣寫了..郁悶...
?<a?href="/Manage/List/<%=?ViewData.Accounts.PageIndex-1?%>"">上一頁</a>
??<a?href="/Manage/List/<%=?ViewData.Accounts.PageIndex+1?%>"">下一頁</a>
轉載于:https://www.cnblogs.com/solo/archive/2008/05/08/1187892.html
總結
以上是生活随笔為你收集整理的MVCToolKit中HtmlHelper.ActionLink的BUG?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 我会永远永远的爱你,直到你不爱我的那一天
- 下一篇: HTML5工具