我在這裏看到了用於保存一個字符串以傳遞到下一頁的示例。但是,我沒有能夠找到或想出如何保存多個搜索參數,而不需要每個搜索字符串的變量,這是我不想做的事情,因爲我有12個搜索字段。C#MVC保存多個搜索字符串用於分頁
我已經看到了將變量保存到viewbag的示例,然後在轉到下一頁時傳遞該示例。這適用於一個變量,但不適用於多個變量。
是否有一個更有說服力的解決方案,然後必須通過每個變量的個別視圖袋?
謝謝!
我在這裏看到了用於保存一個字符串以傳遞到下一頁的示例。但是,我沒有能夠找到或想出如何保存多個搜索參數,而不需要每個搜索字符串的變量,這是我不想做的事情,因爲我有12個搜索字段。C#MVC保存多個搜索字符串用於分頁
我已經看到了將變量保存到viewbag的示例,然後在轉到下一頁時傳遞該示例。這適用於一個變量,但不適用於多個變量。
是否有一個更有說服力的解決方案,然後必須通過每個變量的個別視圖袋?
謝謝!
您可以使用它class
這樣的:
public class SearchField
{
public string Field1 { get; set; }
public int Field2 { get; set; }
// other fields
}
並保存對象ViewBag
這樣的:
SearchField objSearchField = new SearchField();
objSearchField.Field1="value1";
objSearchField.Field2 = 100;
// set other fields
ViewBag.SearchFields = objSearchField;
您可以使用viewbag或TempData的[ 「的StringID」。 tempdata可能是更好的選擇。你要做的是創建一個字符串數組(或者列表可能會更好!)並將所有信息存儲在該數組中。然後你將它存儲在tempdata中。事情是這樣的:
string[] URLs = new string[12];
//do stuff
Tempdata["URLs"] = URLs;
當你到你需要再次網址的頁面,無論是在控制器或視圖中的你會寫:
string[] URLS = (string[])Tempdata["URLs"];
//do stuff
or
string[] URLS = Tempdata["URLs"] as string[];
類似的東西應該工作。你應該在其他方面的ASP MVC來傳遞數據讀了起來:
如果你認爲答案正確,請接受它。 –
你爲什麼不傳遞一個對象在viewbag你有變量性質說的嗎? ...就像是一個正在搜索字段的「Dictionary」鍵,值是變量值。 – GibralterTop
在我看來,這些信息應該是ViewModel的一部分。 –