1
我傳遞一個元組到我的部分觀點從我的ActionResult查看,循環。我不需要創建一個類,因爲它將保存少於六個項目,並且只會在應用程序中使用一次。我以前從來沒有聽說過Tuple,它似乎喜歡最好的方式。問題是,我不知道Tuple有多大會如何檢索我的結果?傳遞元組通過結果
我的代碼返回錯誤:「foreach語句無法在類型‘對象’的變量操作,因爲‘對象’不包含‘的GetEnumerator’一個公共定義」
許多網站解釋這個錯誤「如果你想使用的元組的foreach,那麼你可以繼承元組類,並實現與IEnumerable接口的子類和GetEnumerator方法提供定義。「而我坐在這裏抓我的頭,好像我在讀烏爾都語。
什麼是重構這個傳遞的目錄列表的最佳方式?提前感謝您的建議。
我的ActionResult:
List<Tuple<string, string>> mylist = new List<Tuple<string, string>>();
string[] bits = stringvar.Split(new[] { '/' }, StringSplitOptions.RemoveEmptyEntries);
foreach (string bit in bits)
{
... //some string manipulation here
mylist.Add(new Tuple<string, string>(string1, string2));
}
ViewData["FolderPath"] = mylist;
return PartialView("MyPartialView");
和我Partialview:
<% if (ViewData["FolderPath"] != null) {
var mystuff = ViewData["FolderPath"];
foreach (Tuple<string, string> item in mystuff)
{
string one = item.Item1;
string two = item.Item2;
... // do something with my strings
}
}
%>
I D如果僅使用一次,就不會看到任何問題來創建類。類將使您的代碼更具可讀性並易於支持。也許這就是我個人的元組的厭惡與他們的項目1,項目2,itemN –
@SergeyBerezovskiy你並不孤單,我和你在一起.. –
但在MVC不應該我創建了一個模型來代替?如果是這樣,爲什麼要爲這個愚蠢的代碼創建一個完整的模型,如果不是的話,我應該把類放在哪裏?我可以很容易地將字符串傳遞給視圖,並通過它分割/循環,但不知何故,這似乎並不正確。 – Darkloki