我是新手,所以请多多包涵。我正在构建一个连接到现有天蓝色表存储的 MVC 4 应用程序。现在我需要创建一些“过滤器”,这意味着我必须执行一些查询并将结果显示到应用程序的一个页面。现在我有以下内容:
模型:
public class psEntity : TableEntity
{
public psEntity() { }
public string Message { get; set; }
public string RoleName { get; set; }
public string BatchName { get; set; }
public string DeploymentID { get; set; }
public string Description { get; set; }
}
看法
@model IEnumerable<MvcApplication6.Models.psEntity>
@{
ViewBag.Title = "Performance Status";
}
<h2>Performance Status</h2>
<p>
@Html.ActionLink("Create New", "Create")
</p>
<table>
<tr>
<th>
@Html.DisplayNameFor(model => model.Message)
</th>
<th>
@Html.DisplayNameFor(model => model.RoleName)
</th>
<th></th>
</tr>
@foreach (var item in Model) {
<tr>
<td>
@Html.DisplayFor(modelItem => item.Message)
</td>
<td>
@Html.DisplayFor(modelItem => item.RoleName)
</td>
</tr>
}
控制器:
public class MailingListController : Controller
{
public MailingListController()
{
CloudStorageAccount storageAccount = CloudStorageAccount.Parse(
ConfigurationManager.ConnectionStrings["StorageConnectionString"].ConnectionString);
}
public ActionResult Index()
{
TableQuery<psEntity> query=new TableQuery<psEntity>().Where(
TableQuery.GenerateFilterCondition("RoleName",
QueryComparisons.Equal,"Contacts.Worker.Azure"));
foreach (psEntity list in query)
{
lists.Add(list);
}
return View(lists);
}
我的问题是查询之后会发生什么,以便仅显示我在视图上创建的表中的特定数据。
我尝试使用 foreach 但出现错误,
“foreach 语句无法对 Microsoft.WindowsAzure.Storage.Table.TableQuery>MVCApplication6.Models.psEntity> 类型的变量进行操作,因为它不包含 'GetEnumerator' 的公共定义”。
先感谢您