我有一个静态方法,我想在我的视图中使用razor循环,我不想将数据作为模型发送,我想访问静态方法。
这是我读取CSV文件的方法:
public static List<Tuple<string, string>> ReadAdGroups()
{
var path = System.Web.HttpContext.Current.Request.MapPath("~/ad-grupper.csv");
return System.IO.File.ReadAllLines(path, Encoding.GetEncoding("Windows-1252"))
.Select(x =>
{
var s = x.Split(';');
if (s.Length != 2)
return null;
return new Tuple<string, string>(s[0], s[1]);
})
.Where(x => x != null)
.ToList();
}
现在我想使用razor访问这些数据。我添加了include:
@using Portal.HelpMethods;
然后我想在我看来循环它:
<ul class="dropdown-menu" aria-labelledby="themes">
@foreach (var item in HelpMethods.ReadAdGroups ) {
@Html(item.Item1)
}
</ul>
它不起作用,我收到以下错误消息
Foreach无法对方法组进行操作。
答案 0 :(得分:2)
你错过了调用方法的括号:
@foreach (var item in HelpMethods.ReadAdGroups()) {
答案 1 :(得分:1)
我想你在调用你的方法时会忘记括号:
@foreach (var item in HelpMethods.ReadAdGroups() ) {
@Html(item.Item1)
}