ASP.NET MVC 将两个模型传递给详细信息视图

ASP.NET MVC Passing Two Models to Details View

这个问题可能已经被回答了一百万次,但是,我花了三个多小时,却找不到问题的答案。我正在尝试将两个模型传递到我的详细信息视图,但我无法理解我的详细信息控制器应返回的内容。

这些是我的模型:

public class Property
{
    public int PropertyID { get; set; }
    public string Address { get; set; }
    public string City { get; set; }
    public string ProvinceState { get; set; }
    public string ZipCode { get; set; } 
    public string Country { get; set; }

}

public class PropertySimilar {
    public IEnumerable<Property> Properties { get; set; }
    public Property CurrentProperty { get; set; }
}

这是我的控制器:

public ActionResult Details(int? id)
    {
        if (id == null)
        {
            return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
        }

        Property property = db.Properties.Find(id);

        if (property == null)
        {
            return HttpNotFound();
        }
        return View(db.Properties.ToList());
    }

我正在尝试显示 select 属性,此外还有其下方的其他三个随机属性。

任何指导将不胜感激。谢谢

在 Neel 和 Tetsuya 的帮助下,我解决了我的问题。控制器应该是这样的:

public ActionResult Details(int? id)
{
    if (id == null)
    {
        return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
    }

    var property = db.Properties.Find(id);

    if (property == null)
    {
        return HttpNotFound();
    }

    PropertySimilar pros = new PropertySimilar();
    pros.CurrentProperty = property;
    pros.Properties = db.Properties.ToList();

    return View(pros);
}