2

部分的なビューをレンダリングするリンクをホームページに配置しようとしています-ユーザーがリンクをクリックしたときにデータベースからの情報を表示したいのですが、リンクは同じページのテキストに置き換える必要があります。チュートリアルに従いましたが、プロジェクトで動作させることができません。これが私が持っているものです:

マイホーム/インデックスビュー:

<div id="NeZaman">
@Ajax.ActionLink("Ne Zaman Gelcekmiş?", "NeZaman", new AjaxOptions {
                                        UpdateTargetId="NeZaman",
                                        InsertionMode = InsertionMode.Replace,
                                        HttpMethod="GET" })
</div>

私のHomeController:

    private CaglaContext db = new CaglaContext();

    public PartialViewResult NeZaman()
    {
        var neZaman = db.Caglas.Where(c => c.Id == 1).Select(c => c.NeZamanGelcek).FirstOrDefault();
        return PartialView("_NeZaman", neZaman);
    }

私の部分的なビュー(_NeZaman.cshtml):

    @model caglageldimi.Models.Cagla

<p>
   @Model.NeZamanGelcek
</p>

私のモデル(Cagla.cs):

public class Cagla
{
    public int Id { get; set; }
    public bool GeldiMi { get; set; }
    public string NeZamanGelcek { get; set; }
    public string Nerdeymis { get; set; }
}

だから私は部分ビューが使用することになっているneZaman値を渡しますが、どのように?

4

1 に答える 1

4

空間ビューのモデルをクラスに設定しました。

caglageldimi.Models.Cagla

しかし、あなたは文字列を渡しています:

db.Caglas.Where(c => c.Id == 1).Select(c => c.NeZamanGelcek).FirstOrDefault();

selectステートメントは、「NeZamanGelcek」文字列プロパティ値を取得して部分ビューに送信するだけです。

部分ビューのモデルをSystem.Stringに変更すると、次のように修正されます。

@model System.String

于 2012-10-31T19:58:14.537 に答える