renderpage 的语法是@Renderpage("mypage.cshtml", "a", "b")
其中“a”和“b”是传递给 mypage.cshtml 我假设的数组。
但是如何从 mypage.cshtml 页面访问变量 a 和 b。
假设 a,b 是一些字符串类型的数组,那么下面的示例代码可能会对您有所帮助
List<string> cities =new List<string>{"London","NewYork"}
List<string> shops=new List<string>{"TESCO","Wallmart"}
假设这些项目存储在 ViewBag 中
购物.cshtml
@model ShopList
{
@RenderPage("Info.cshtml", ViewBag.cities)
}
CityInfo.cshtml
@model List<string>
@foreach(string city in Model){
<div>
@city
</div>
}
如果您引用 WebPageBase.RenderPage 方法,那么您传递一个数据数组,如下所示:
@{ var myObject = new MyObject() // <-- assume MyObject class declared contains properties a&b
{
a = "a",
b = "b"
}
}
<div>
@RenderPage("mypage.cshtml", myObject)
</div>
然后在目标页面上使用
@model MyObject
并访问其属性:
<div>
@Model.a
@Model.b
</div>
[编辑] MyObject 声明:
public class MyObject {
public string a { get; set; }
public string b { get; set; }
}