【发布时间】:2017-09-01 20:06:10
【问题描述】:
我有一个 PartialView (_Letra),它从名为 Music 的控制器接收信息......这样
public ActionResult CarregarLetra(string id, string artista, string musica)
{
return PartialView("_Letra", ArtMus(artista, musica));
}
public ResultLetra ArtMus(string artista, string musica)
{
//Conteúdo do metodo[..]
var queryResult = client.Execute<ResultLetra>(request).Data;
return queryResult;
}
在那之前,没问题。发生的情况是,现在我需要将其他信息传递给同一个 PartialView (_Letra)。此信息在 PartialView (_Cifra) 中。
所以我在我的音乐控制器中添加了以下几行
public ActionResult CarregarCifra(string id, string artista, string musica)
{
return PartialView("_Cifra", GetCifra(artista, musica));
}
public ResultChords GetCifra(string artista, string musica)
{
var cfrTest= new Cifra();
var cifra = new ResultChords();
cifra.chords = cfrTest.GetInfs(artista, musica);
return cifra;
}
到目前为止一切正常,PartialView _Cifra 接收信息
我搜了一下,发现可以在PartialView _Letra中使用Html.Partial来加载我的PartialView _Cifra,然后我就这样做了
我加了
<div class="item">
<div class="text-carousel carousel-content">
<div>
@Html.Partial("_Cifra", new letero.mus.Infra.Models.ResultChords());
</div>
</div>
</div>
现在它开始复杂化了,返回的是 null,我相信这是由于我在 Html.Partial 中创建的 ResultChords 的新实例
我已经尝试使用 ViewBag 也可以在 Partials 之间转置信息,但可能不正确,因为返回也是 null。
我已经进行了大量研究,但没有获得 PartialView _Letra 所需的信息。
我不知道有更好的方法不使用 Html.Partial 或正确使用它。
【问题讨论】:
标签: c# asp.net-mvc razor partial-views