3

プロジェクトに MVC 4.0 モバイル テンプレートを使用していますが、デフォルトのスキャフォールディング/テンプレートで奇妙な問題に遭遇しました。簡単なモデルを作成しました:

public class Person
{
    public int Id { get; set; }
    [Required]
    public string Name { get; set; }
}

次に、インデックス アクションと作成アクションを含む単純なコントローラーを作成しました。

public ActionResult Index()
    {
        List<Person> persons = new List<Person>();
        return View(persons);
    }

public ActionResult Create()
    {
        Person p = new Person();
        return View(p);
    }

    //
    // POST: /Person/Create

    [HttpPost]
    public ActionResult Create(Person p)
    {
        try
        {
            // TODO: Add insert logic here
            //empty

            //return Redirect("/Person/Index");
            return RedirectToAction("Index", "Person", null);
        }
        catch
        {
            return View();
        }
    }

2 つのアクションのビューを生成しました。Index の場合は List ビューを生成し、Create の場合は Create ビューを生成しました。問題は、新しい製品を作成した後、インデックス ビューにリダイレクトする必要があることです。これは奇妙な方法ですが、URL は /Person/Create のままであり、インデックス ビューの [新規作成] リンクをクリックしても何も起こりません。(生成されたとおりに新しいリンクを作成します: @Html.ActionLink("Create New", "Create") )

これはバグだと思いますが、まだオンラインで何も見つかりませんでした..これを機能させる方法に関する推奨事項はありますか?

ありがとう。

4

1 に答える 1

0

回避策があります: jQuery Mobile/MVC: RedirectToAction で変更するブラウザー URL の取得

さらに、ページが更新されなかった (私は IE を使用した) ため、次の後に IE でページを更新するには、この回答に従う必要がありましたRedirectToAction: How to stop MVC caching the results of invoking an action method?

于 2012-07-25T13:56:13.997 に答える