2011-06-18 14 views
7

को पूर्णांक सूची में जोड़ सकते हैं मैं इस तरह मेरी Url.Action कुछ करने के लिए int [] सरणी जोड़ने के लिए कोशिश कर रहा हूँ: मेरे विचार मेंमैं कैसे मार्ग

var routeData = new RouteValueDictionary(); 

for (int i = 0; i < Model.GroupsId.Length; i++) { 
    routeData.Add("GroupsId[" + i + "]", Model.GroupsId[i]); 
} 

:

Url.Action("Index", routeData) 

लेकिन में html मैं हो रही है:

GroupsId%5B0%5D=1213&GroupsId%5B0%5D=1214 

और नहीं:

GroupsId=1213&GroupsId=1214 

मुझे इसकी आवश्यकता है क्योंकि मेरे पास एक चेकबॉक्स सूची है, और जब मैं पोस्ट करता हूं तो मैं int [] को समूहबद्ध करता हूं और फिर यह देखने के लिए पास करता हूं कि मेरे पास Url.Action के साथ निर्यात बटन कहां है जो मेरे लिए सही तरीके से काम नहीं करता है ।

उत्तर

6

डुप्लिकेट क्वेरी स्ट्रिंग पैरामीटर नामों के कारण आप मानक मददगार का उपयोग करके ऐसे यूआरएल उत्पन्न नहीं कर सकते हैं। यह दुर्भाग्यपूर्ण है लेकिन यह चीजें हैं।

var baseUrl = Url.Action("Index", "SomeController", null, Request.Url.Scheme); 
var uriBuilder = new UriBuilder(baseUrl); 
uriBuilder.Query = string.Join("&", Model.GroupsId.Select(x => "groupsid=" + x)); 
string url = uriBuilder.ToString(); 
:

यहाँ तुम क्या बजाय क्रम में इस तरह के यूआरएल उत्पन्न करने के लिए कर सकते हैं

संबंधित मुद्दे