0

コントローラーに返されるJavaScript配列があります

amount_array[]

そして、次のようなさまざまな名前付きキーが含まれています

amount_array['start_date'] , amount_array['end_date']

配列内のそのような変数をさらに使用して

コントローラーの C# で配列を設定して、配列から開始日と終了日を名前で呼び出す方法はありますか?

それとも、配列内の位置で呼び出す必要がありますか?

どんな助けでも大歓迎です。

ありがとう

4

1 に答える 1

3

私はJavaScript配列を持っています

いいえ、JavaScript 配列はありません。JavaScript では、配列には整数 0 ベースのインデックスが必要です。あなたが持っているのは、 と の 2 つのプロパティを持つ JavaScript オブジェクトstart_dateですend_date

したがって、この構造に一致するようにビュー モデルを定義します。

public class MyViewModel
{
    public DateTime Start_Date { get; set; }
    public DateTime End_Date { get; set; }
}

次に、このビュー モデルを取得して処理を行うコントローラー アクション:

[HttpPost]
public ActionResult SomeAction(MyViewModel model)
{
    // use model.Start_Date and model.End_Date here
    ...
}

最後に、このコントローラー アクションを呼び出す JavaScript 関数 (たとえば AJAX を使用):

var amount_array = {
    start_date: new Date(2012, 8, 1).toUTCString(),
    end_date: new Date(2012, 8, 31).toUTCString()
};
$.ajax({
    url: '@Url.Action("SomeAction")',
    type: 'POST',
    data: amount_array,
    success: function(result) {

    }
});
于 2012-08-17T21:40:39.153 に答える