我试图在我的主页上放置一些呈现部分视图的链接 - 我想在用户点击链接时显示数据库中的一些信息:链接应该被同一页面上的文本替换。我按照教程,但我不能让它在我的项目中工作。这就是我所拥有的:
我的主页/索引视图:
<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值,但是如何?
答案 0 :(得分:4)
您已将您的patial视图模型设置为您的班级:
caglageldimi.Models.Cagla
但是你传递了一个字符串:
db.Caglas.Where(c =&gt; c.Id == 1)。选择(c =&gt; c.NeZamanGelcek).FirstOrDefault();
您的select语句只是抓取“NeZamanGelcek”字符串属性值以发送到您的局部视图。
将部分视图的模型更改为System.String应该修复它:
@model System.String