1. 程式人生 > 實用技巧 >【WTM框架】查詢列表顯示正常,但是匯出的時候查詢條件不起作用的問題記錄及解決方法

【WTM框架】查詢列表顯示正常,但是匯出的時候查詢條件不起作用的問題記錄及解決方法

問題描述

  添加了一個查詢列表,輸入關鍵字查詢都正常,但是匯出的時候,查詢條件沒有起到作用,把所有的資料都查出來了。

  

  出現問題當時的場景描述:

  建了一個這個類:

    public class PurchaseOrderDetailAndListGroup
    {
        public PurchaseOrderMainVM Main { get; set; }

        public PurchaseOrderDetailListVM DetailList { get; set; }
    }

  然後把這個類傳到前臺:

            var
vm = CreateVM<PurchaseOrderMainVM>(id); var ListData = CreateVM<PurchaseOrderDetailListVM>(); PurchaseOrderDetailAndListGroup group = new PurchaseOrderDetailAndListGroup(); group.Main = vm; group.DetailList = ListData; return PartialView(group);

  前臺用的時候:

@model TS_DataBridgeMainWeb.ViewModel.PurchaseOrder.PurchaseOrderMainVMs.PurchaseOrderDetailAndListGroup
@inject IStringLocalizer<WalkingTec.Mvvm.Core.Program> Localizer;
<wt:form vm="Main">
    <wt:row items-per-row="ItemsPerRowEnum.Three">
        <wt:display field="
Main.Entity.ordercode" /> <wt:display field="Main.Entity.shopcode" /> </wt:row> </wt:form> <wt:searchpanel vm="DetailList" reset-btn="true"> <wt:row items-per-row="ItemsPerRowEnum.Three"> <wt:textbox field="DetailList.Searcher.ordercode" default-value="@Model.Main.Entity.ordercode" /> </wt:row> </wt:searchpanel> <wt:grid vm="DetailList" url="/PurchaseOrder/PurchaseOrderMain/SearchDetail" hidden-checkbox="true" /> <wt:row align="AlignEnum.Center"> <wt:closebutton /> </wt:row>

解決方法

  把“PurchaseOrderDetailListVM”做為model傳到前臺,然後另外一個實體,使用ViewBag的方法上傳,如下:

            var vm = CreateVM<ReturnedPurchaseOrderMainVM>(id);
            var ListData = CreateVM<PurchaseOrderDetailListVM>();
            ViewBag.MainData = vm;
            return PartialView(ListData);

@model TS_DataBridgeMainWeb.ViewModel.ReturnedPurchaseOrder.PurchaseOrderMainVMs.PurchaseOrderDetailListVM
@inject IStringLocalizer<WalkingTec.Mvvm.Core.Program> Localizer;
@{
    var Main = (TS_DataBridgeMainWeb.ViewModel.ReturnedPurchaseOrder.ReturnedPurchaseOrderMainVMs.ReturnedPurchaseOrderMainVM)ViewBag.MainData;
}

<wt:form vm="@Main">
    <wt:row items-per-row="ItemsPerRowEnum.Three">
        <wt:display field="@Main.Entity.code" />
        <wt:display field="@Main.Entity.shopcode" />
    </wt:row>
</wt:form>

    <wt:searchpanel vm="@Model" reset-btn="true">
        <wt:row items-per-row="ItemsPerRowEnum.Three">
            <wt:textbox field="Searcher.code" default-value="@Main.Entity.code" />
        </wt:row>
    </wt:searchpanel>

<wt:row items-per-row="ItemsPerRowEnum.One">
    <div style="padding:0px; margin:0px; height:350px;">
        <wt:grid vm="@Model" url="/PurchaseOrder/PurchaseOrderMain/SearchDetail" hidden-checkbox="true" />
    </div>
</wt:row>
<div style="margin-top:30px;">
    <wt:row align="AlignEnum.Center">
        <wt:closebutton />
    </wt:row>
</div>