加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-mvc-3 – 如何在控制器方法的新选项卡中打开cshtml文件

发布时间:2020-12-15 19:32:43 所属栏目:asp.Net 来源:网络整理
导读:我正在做一个Nopcommerce,并且需要生成发票(定制不像他们已经提供的,因为它不能解决我们的目的).我们需要生成发票 在新的选项卡(使用另一个cshtml文件)使用控制器的方法也我正在传递模型数据视图. tr td class="adminTitle" @Html.NopLabelFor(model = model
我正在做一个Nopcommerce,并且需要生成发票(定制不像他们已经提供的,因为它不能解决我们的目的).我们需要生成发票
在新的选项卡(使用另一个cshtml文件)使用控制器的方法也我正在传递模型数据视图.
<tr>
        <td class="adminTitle">
            @Html.NopLabelFor(model => model.ProbableDeliveryDate):
        </td>
        <td class="adminData">
            @Html.EditorFor(model=>model.ProbableDeliveryDate)
        </td>
        </tr>
        <tr>
            <td>
            @if(Model.CanGenrateInvoice)
            {
                 <input type="submit" name="generateinvoice" value="@T("Admin.Orders.Fields.generateinvoice")" id="generateinvoice" class="adminButton"  />
            }
            </td>
        </tr>

我必须发布数据以获取值为可能的传递日期到控制器方法,之后要打开视图在新的选项卡.

我该怎么办?

解决方法

如果您通过Html.ActionLink从第一页获取操作,您可以这样做:
Html.ActionLink("Open Invoice","ActionName","ControllerName",new { id = Model.InvoiceID },new { target = "_blank" });

指定target =“_blank”将在新选项卡中打开

更新

由于您将模型发布到控制器(我希望RedirectToAction可以帮助打开一个新的窗口/选项卡,但不是这样)

我的疯狂感觉正在刺激你的流动…这只是我,但我会做一些不同的事情,如

>将模型发布到控制器
>保存生成发票的数据
>将InvoiceID返回到操作
>将InvoiceID添加到模型中
>发送模型回到视图
>通知用户
>发票已生成,并显示如上所述的链接,允许用户打开发票或
>这提供了完美的清洁解决方案来显示模型错误,如果有的话

您的看法可能有一块剃刀代码:

@{
    if(Model.InvoiceID != null && Model.InvoiceID !=0) {
        @Html.ActionLink("Open Invoice",new { target = "_blank" });
    } 
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读