私の問題があります。コントローラーには、ボタンをクリックしたときにビューをファイルにエクスポートするこのメソッドがあります。
public ActionResult Export(string searchString, int searchOrder = 0)
{
var user = from m in db.Orders select m;
if (!String.IsNullOrEmpty(searchString))
{
user = user.Where(s => s.ClientID.Contains(searchString));
}
Response.AddHeader("Content-Type", "application/vnd.ms-excel");
return this.View(user);
}
私のインデックスビュー:
@model IEnumerable<MyApp.Models.Order>
@{
ViewBag.Title = "Index";
}
<h2>Orders Historic</h2>
<div id="orderDiv">
@using (Html.BeginForm("Export", "Historic", FormMethod.Get))
{
<p>
Generate Order with ClientID :          
@Html.TextBox("searchString")
<input type="submit" value="GENEREMOI" />
</p>
}
</div>
そして私のエクスポートビュー:
@model IEnumerable<KrysGroup.Models.Order>
<table cellpadding="3" cellspacing="3">
<tr>
<td width="12%" align="center">
Client Name/ID
</td>
<td width="15%" align="center">
N° Order
</td>
OTHER TD....
</tr>
@foreach (var item in Model)
{
TimeSpan result = DateTime.Now - item.OrderDate;
if (result.Days < 31)
{
<tr border="1" bgcolor="@Odd">
<td> @Html.DisplayFor(modelItem => item.Username) </td>
<td> @Html.DisplayFor(modelItem => item.OrderId) </td>
<td>
<ul style="list-style-type:none; padding:0; margin:0">
@if (item.OrderDetails != null)
{
foreach (var o in item.OrderDetails)
{
if (o.Pack == null)
{
<li> @Html.DisplayFor(modelItem => o.Product.Name) </li>
}
else
{
<li> <text>Pack</text> @Html.DisplayFor(modelItem => o.Pack.Name) </li>
}
}
}
</ul>
</td>
OTHER TD...
</table>
したがって、私の見解では、テキスト ボックスに ClientID を通知し、ボタンをクリックすると、この ClientID を持つテーブル内のすべてのフィールドがファイルにエクスポートされます。
このアクションを自動化したいと思います。つまり、ボタンをクリックすると、テーブルで一致する clientId ごとにこの export() メソッドを実行するためのメソッドなどを作成したいと思います。
私は十分に明確だったと思います.私の英語で申し訳ありません..回答、リンク、ヒントをありがとう。