我正试图在主页上放置一些呈现部分视图的链接-当用户单击链接时,我想显示数据库中的一些信息:该链接应该被同一页面上的文本替换。我遵循了一个教程,但我无法让它在我的项目中发挥作用。这是我所拥有的:
我的主页/索引视图:
<div id="NeZaman">
@Ajax.ActionLink("Ne Zaman Gelcekmiş?", "NeZaman", new AjaxOptions {
UpdateTargetId="NeZaman",
InsertionMode = InsertionMode.Replace,
HttpMethod="GET" })
</div>
我的家庭控制器:
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.cs.html):
@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值,部分视图应该使用这个值,但是如何使用呢?
您已经将空间视图的模型设置为您的类:
caglageldimi.Models.Agla
但你传递的是一个字符串:
db.Caglas.Where(c=>c.Id==1).Select(c=>c.NeZamanGelcek).FirstOrDefault();
您的select语句只是获取"NeZamanGelcek"字符串属性值以发送到您的局部视图。
将部分视图的模型更改为System.String应该可以修复它:
@型号System.String