1

ASP.net リダイレクトに問題があります。

以下のCopy()メソッドは、ajax を使用してグリッド内の JavaScript ボタンから呼び出され、正常に動作します。Createコントローラーのアクションにリダイレクトします。

<AcceptVerbs(HttpVerbs.Post)> _
Sub Copy(ByVal noDemande As Integer)
    Response.Redirect("/DemandeDeMontage/Create/" & noDemande)
End Sub

アクションは、Createフィールドをデータベースに保存する前に編集できるページです。が渡されるIdと、フィールドには別のレコードの情報 (コピーされた情報) が事前に入力されます。

<AcceptVerbs(HttpVerbs.Get)> _
Function Create(Optional ByVal id As Integer? = Nothing) As ActionResult
    If (id Is Nothing) Then
        Dim dmd As New DEMND_MONTG
        Return View("Edit", dmd)
    Else
        Dim dmd As ODCT0124_DEMND_MONTG = _dmdMontRep.getDmdById(id)
        dmd.CO_STAT = ModuleCommon.Status.AwaitingSave
        Return View("Edit", dmd)
    End If
End Function

上記のコードにエラーはありません。

デバッグすると、すべてが機能しているように見えます。Copyアクションが呼び出され、次に が呼び出され、エラーなしCreateで の HTML コードをステップ実行できます。Edit page

ただし、ページは変わりません!まったくリダイレ​​クトされていないようです。編集ページが表示されず、コピーできるすべてのレコードを含むグリッドを表示するページに固執しています。

編集ページが表示されない理由を誰か説明できますか? 私が見ていない本当に明白なものはありますか?

4

1 に答える 1

0

それは私の側のばかげたエラーでした。

Copyアクションは経由で呼び出されましたが、アクションから返されたAJAXものをどうするかを指定するのを忘れました。html

window.location = "/DemandeDeMontage/Copy/" + id代わりに今使っています。

于 2012-04-13T14:08:07.553 に答える