0

MVC 規則に従っているかどうかはわかりませんが、コントローラー A からコントローラー B にいくつかの変数が渡されています。私の目的は、「発行」という名前の別のビューActionLinkをクリックして何らかの処理を行うことです。

コントローラー A からのリダイレクト:

var redirectUrl = new UrlHelper(Request.RequestContext).Action("Index", "Publish", new { accTok = facebookAccessTok, fullImgPath = fullpath });
            return Json(new { Url = redirectUrl });   

処理を行うビューに ActionLink を含むコントローラー B の「パブリッシュ」インデックスに「accTok」と「fullImgPath」の値がありますが、それらを「パブリッシュ」ビュー結果に渡す方法がわかりません。 ' それを行う方法:

namespace SF.Controllers
{
    public class PublishController : Controller
    {

    public ViewResult Index(string accTok, string fullImgPath)
        {
            return View();
        }

        // This ViewResult requires the values 'accTok' and 'fullImgPath'
        public ViewResult Publish()
        {
            // I need the values 'accTok' and 'fullImgPath'
            SomeProcessing();
            return View();
        }

        public SomeProcessing(string accessToken, string fullImagePath)
        {
            //Implementation
        }
    }
}

インデックス ビュー:

 @{
        ViewBag.Title = "Index";
    }

    <h2>Publish</h2>

    <br/><br/>

    @Html.ActionLink("Save Image", "Publish")
4

2 に答える 2

0

コントローラーで:

public ViewResult Index(string accTok, string fullImgPath)
{
    ViewModel.Acctok = accTok;
    ViewModel.FullImgPath = fullImgPath;
    return View();
}

public ViewResult Publish(string accTok, string fullImgPath)
{
    SomeProcessing(accTok,fullImgPath);
    return View();
}

ビューで:

@Html.ActionLink("Save Image", "Publish","Publish",new {accTok=ViewModel.Acctok, fullImgPath=ViewModel.FullImgPath},null )

ActionLink の代わりに、非表示の入力フィールドを持つフォームにすることもできます (このメソッドがデータベース/ディスク上のものを変更する場合、実際には投稿にあるはずです)。

ただし、ビューモデルを使用して index アクションからビューにパラメーターを渡すと、パブリッシュ アクションにパラメーターを送信できます。これは通常、MVC のステートレス Web で行う方法です。

于 2012-08-16T09:36:19.910 に答える
0

これを行うことをお勧めします

public ViewResult Publish(string accTok, string fullImgPath)
        {
            SomeProcessing(accTok,fullImgPath);
            return View();
        }
于 2012-08-16T04:26:39.413 に答える