2015-10-01 4 views
0

Простой вопрос. У меня есть TempData, который я использую для временного хранения массива int. Я передаю это другому результату. Тогда мне просто нужно преобразовать его в массив int. Может ли кто-нибудь помочь?Как преобразовать объект в int []?

Действие Результат:

public ActionResult SupplierReportSelection(
    int ClientID, int[] ReviewPeriodID, int? GroupID, int? SupplierID = null, 
    bool? Backbtn = null, int? StatusCategoryID = null) 
{ 
    if (TempData["TempReviewPeriod"] != null) { 
     var convertToString = TempData["TempReviewPeriod"].ToString(); 
    } 

    // Removed unnecessary code 

    return View("ClaimsBySupplier"); 
} 
+1

Что? Пожалуйста, будьте ясны ... Какова ваша проблема внутри кода. Я могу видеть 'var convert', ... – kevintjuh93

+2

Вы имеете в виду' int [] temp = (int []) TempData ["TempReviewPeriod"]; '? – Ric

+2

Вы пытались использовать 'TempData [" TempReviewPeriod "] как int []' или '(int []) TempData [" TempReviewPeriod "]'? – Robert

ответ

1

Я думаю, что это то, что вы после:

int[] temp = (int[])TempData["TempReviewPeriod"];

Для немного более фона на это:

TempData которого базовый тип (TempDataDictionary) инвентарь IDictionary<string, object>:

public class TempDataDictionary : IDictionary<string, object>

Доступ словарь по key возвращает object - так что с этого момента, вы можете привести к требуемому типу.

+0

Спасибо, Рик! Я не знал, что вы можете использовать массив, я думал, что вы можете использовать простые типы данных! –

+1

Вы можете отличить практически любой тип объекта, который вы хотите – Ric

+1

, предоставленный, что указанный объект действительно имеет нужный тип –

Смежные вопросы