小编boi*_*222的帖子

在MVC/Razor中,如何获取多个复选框的值并将它们全部传递给控制器​​?

我有一个视图,其中包含模型中的项目列表.我需要为每一行添加一个复选框,让用户选中多个复选框,并将选择了哪一行的标识符传递给控制器​​.我知道如何通过动作链接传递单个值,但我不确定如何通过动作链接传递多个值或如何"收集"选择哪些行.我将在下面展示我的一些代码尝试.有人可以帮我理清为什么我无法获得传递给控制器​​的所有复选框的值吗?

这是我的页面

Checkbox     App ID     Date     Name
   []          1        5/10     Bob
   []          2        5/10     Ted
   []          3        5/11     Alice
Run Code Online (Sandbox Code Playgroud)

我需要用户做的是选择第1行和第3行(例如)并将这些App ID传递给控制器​​.

我开始列出各种尝试,但决定只显示我当前的尝试,看看是否有人可以指出我做错了什么.我在网上和我的例子中看到的主要区别是我使用PagedList并在foreach循环中创建表的行.

当命中控制器时,参数int为空白.如何从复选框中获取值?我使用这个站点的基本思想是将所有复选框命名为相同,并通过操作链接传递ICollection:http: //haacked.com/archive/2008/10/23/model-binding-to-a-list. ASPX /

视图:

@model PagedList.IPagedList<CarmelFinancialWeb.Models.ModelMerchantSummary>
<div class="block" style="width: 100%; float: left">
<p class="block-heading"> 
Merchant Application Report
</p>
<div class="table-holder">
    <table class="table" style="margin-bottom: 0px">
            <tbody>
                @foreach (var item in Model)
                {
                    <tr>
                        <td>
                            <input type="checkbox" name="ints" value=item.ApplicationID />
                        </td>
                    <td>
                        @Html.ActionLink(item.ApplicationID.ToString(), "ViewApplication", new { ID = item.ApplicationID, edit = 1 }, new AjaxOptions { HttpMethod …
Run Code Online (Sandbox Code Playgroud)

c# checkbox asp.net-mvc razor asp.net-mvc-4

10
推荐指数
2
解决办法
4万
查看次数

如何修复"未找到初始内容"错误?

在客户端的某些代码上使用Flash Builder 4.6.单击调试(也尝试运行)并收到此错误:

Process terminated unexpectedly.

initial content not found

Launch command details:  "C:\Program Files\Adobe\Adobe Flash Builder 4.6\sdks\4.6.0
\bin\adl.exe" -runtime "C:\Program Files\Adobe\Adobe Flash Builder 4.6\sdks\4.6.0
\runtimes\air\win" -profile mobileDevice -screensize 640x920:640x960 -XscreenDPI 326 -
XversionPlatform IOS "C:\Users\tstiffler\Adobe Flash Builder 4.6\TP\bin-debug\TP-
app.xml" "C:\Users\tstiffler\Adobe Flash Builder 4.6\TP\bin-debug"
Run Code Online (Sandbox Code Playgroud)

我该如何解决?请尽可能详细,因为我之前从未使用过Flash Builder.谢谢!

apache-flex air debugging flash flash-builder

7
推荐指数
1
解决办法
1万
查看次数

MVC - 提交按钮不能处理多个部分视图

我是MVC的新手,所以请放轻松我.我收到了一个在MVC中启动的项目,并被告知要添加它.我很好,直到我得到一个需要两个不同模型的数据的部分.现在我被困住了,我的老板昨天想要这样做.如果可以的话请帮忙.

我有一个视图有两个部分视图和一个提交按钮.每个部分视图使用不同的模型.视图在屏幕上显示用户可以改变的信息.然后单击提交按钮.在控制器中,我想访问两个模型中的数据(用户在屏幕上输入的值).现在,我甚至无法通过提交按钮来呼叫控制器.这是我需要立即帮助的部分,但我最终需要知道如何从控制器访问两个模型的数据.

这是我想要做的基本想法:

在此输入图像描述

这是我的观点:CreateContract.cshtml

<div class="container-fluid">
@using (Html.BeginForm("CreateContract", "CreateContract", FormMethod.Post, new { @class = "form-horizontal " }))
{
                <div id="PartialDiv">
            @{
        Html.RenderPartial("ApplicationPartialView", new CarmelFinancialWeb.Models.ModelApplication());
        Html.RenderPartial("ContractPartialView");
            }
        </div>
            <input id="btnCreateContract" type="submit" class="btn btn-primary" value="Save" name="CreateContract" />
}
    </div>
Run Code Online (Sandbox Code Playgroud)

这是控制器CreateContractController.cs的一部分.当视图打开并且工作正常时,会触发此方法.

        [AuthorizeAdmin]
    public ActionResult CreateContract(string ID)
    {
        ModelContract obj_Contract = new ModelContract();

        obj_Contract.BuyerName = "MOCS";

        return View(@"~/Views/CreateContract/CreateContract.cshtml", obj_Contract);
    }
Run Code Online (Sandbox Code Playgroud)

这是控制器CreateContractController.cs的一部分.单击提交按钮时,不会触发此方法.我尝试过包含其他方法的字符串ID变量以及ModelContract和ModelApplication(及其各种组合),但我无法调用此方法.

        [AuthorizeAdmin]
    [HttpPost]
    public ActionResult CreateContract()
    {
         ModelApplication obj_App = new ModelApplication();
         return View(@"~/Views/CreateContract/CreateContract.cshtml", obj_App);

    }
Run Code Online (Sandbox Code Playgroud)

这些是部分视图的控制器中的方法.这些也没有被调用.

        public PartialViewResult ApplicationPartialView(string ID)
    {
        ModelApplication obj_App …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc asp.net-mvc-4

7
推荐指数
1
解决办法
6206
查看次数

如何配置 .net 核心 API 以在 IIS 中工作?

我在 Visual Studio 2017 中创建了一个运行良好的 .net 核心 API。当我去部署它时,我收到错误消息 HTTP 错误 500.19,错误代码为 0x8007000d。我在网上找到了多种解决方案,例如确保安装了 Windows 功能、删除 .net CLR 版本、更改应用程序池标识、更改 web.config 和 applicationHost.config,但没有任何效果。有没有办法明确地找出问题所在,或者我是否在无数可能的解决方案中反复试验?你知道任何具体的解决方案吗?

以下是 IIS 设置和我的 Windows 功能的屏幕截图:

在此处输入图片说明

这是我的 web.config 文件:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <!--
    Configure your application settings in appsettings.json. Learn more at     http://go.microsoft.com/fwlink/?LinkId=786380
  -->
  <system.webServer>
    <handlers>
      <add name="aspNetCore" path="*" verb="*"
        modules="AspNetCoreModule" resourceType="Unspecified" />
    </handlers>
    <aspNetCore processPath="dotnet"
                arguments=".\DishbooksAPI.dll" 
                stdoutLogEnabled="false" 
                stdoutLogFile=".\logs\stdout" 
                forwardWindowsAuthToken="false" />
  </system.webServer>
</configuration>
Run Code Online (Sandbox Code Playgroud)

这是 IIS 错误:

在此处输入图片说明

我尝试过的一些 stackoverflow 页面(这不是一个详尽的列表):

将 .net 核心项目发布到 iis 时出现 HTTP 错误 500.19

部署 .net 核心应用程序时出现 …

deployment iis iis-7 .net-core asp.net-core

6
推荐指数
1
解决办法
4820
查看次数

Visual Studio 2013:无法访问IIS元数据库

我正在尝试在Windows 7机器上的Visual Studio 2013中打开一个asp.net MVC项目.我收到有关无法访问IIS元数据库的错误.我已经尝试过我可以在网上找到的所有建议,但我无法让它发挥作用.我们公司的主要变化是我们的本地文件服务器出现故障.这包含了我的所有文件.我猜我有需要的东西,但我不知道该文件是什么或如何恢复它.我无法对网站进行任何更改,而且我的老板正在追捕我以完成更改,所以我非常绝望.有人可以给我一个解决方案吗?

如果我使用Visual Studio解决方案文件打开该站点,我会收到一条消息,指出项目无法加载.如果我右键单击它并选择重新加载,我会收到一条消息,"创建虚拟目录http:// localhost:1436 /失败并显示错误:无法访问IIS元数据库.您没有足够的权限访问您计算机上的IIS网站."

如果我打开网站作为一个网站(不使用解决方案或项目文件),我收到错误"配置IIS Express失败,出现以下错误:无法访问IIS元数据库.您没有足够的权限访问IIS Web你机器上的网站."

这是我尝试过的所有内容的列表.这似乎是人们所拥有的大多数想法,但我希望你能找到另一种解决方案.

去了%systemroot%\ System32\inetsrv\config

卸载/重新安装IIS

  • 控制面板,程序和功能,打开或关闭Windows功能
  • 未经检查的Internet信息服务
  • 点击申请
  • 重新启动
  • 控制面板,程序和功能,打开或关闭Windows功能
  • 检查了Internet信息服务
  • 点击申请
  • 重新启动
  • 错误 - 无法访问IIS元数据库

修复了Visual Studio 13

  • 控制面板,程序和功能,Microsoft Visual Studio Professional 2023
  • 点击修复
  • 由同事建议

更改.csproj文件

  • 使用已设置为true的IIS标记
    • <UseIISExpress>false</UseIISExpress>
    • <UseIIS>False</UseIIS>
  • IIS URL标记中没有任何内容
    • <IISUrl></IISUrl>
  • 错误 - 无法访问IIS元数据库

以管理员身份运行Visual Studio

删除默认网站并重新创建

修复了IIS

iis windows-7 iis-metabase visual-studio-2013

5
推荐指数
1
解决办法
2761
查看次数

如何使用其他集合中的值更新MongoDB集合?

我有一个名为MongoDB的集合,properties以及一个名为的集合中的另一个新数据集合newProperties.

我想用两个表中saleNumber相同的所有记录的新值更新单个字段(amountOwed). propertiesnewProperties

当我对值进行硬编码时,我已经能够编写单个更新脚本.在使用数组然后使用forEach循环解析它时,我无法使更新脚本正常工作.有人可以解释如何做到这一点?

所以我从一个名为propertiesthis 的集合开始(我只包括相关字段):

{ 
    "_id" : ObjectId("551816b02eecf1238b3baadb"), 
    "saleNumber" : NumberInt(17917), 
    "saleDetails" : {
        "amountOwed" : 266.0, 
    }
}
{ 
    "_id" : ObjectId("551816b02eecf1238b3baadc"), 
    "saleNumber" : NumberInt(851400070), 
    "saleDetails" : {
        "amountOwed" : 270.0, 
    }
}
Run Code Online (Sandbox Code Playgroud)

我导入一个名为newPropertiesthis 的新集合(请注意amountOwed已更改为salesNumber 17917 的记录):

{ 
    "_id" : ObjectId("551816b02eecf1238b3baadb"), 
    "saleNumber" : NumberInt(17917), 
    "saleDetails" : {
        "amountOwed" : 300.0, 
    }
}
Run Code Online (Sandbox Code Playgroud)

我要的是更新properties.saleDetails.amountOwed与价值newProperties.saleDetails.amountOwed的地方saleNumbers匹配.

这是我写的查询:

newActiveProperties.forEach(function(doc) …
Run Code Online (Sandbox Code Playgroud)

mongodb mongodb-query

5
推荐指数
1
解决办法
622
查看次数

在MVC视图中,如果在表单标记中没有指定,则调用哪个控制器和方法?

我有一个继承的MVC项目.在视图上,BeginForm标记中没有指定路由(控制器和操作).视图呈现正确,因此我假设它正在选择默认路由.

我的问题是,如果没有指定路线,它是如何知道使用的路线?这里的最佳做法是:您是指定路线还是让它默认?

所以视图是Views/Config/WorkCodes.cshtml,标签是

Html.BeginForm()
Run Code Online (Sandbox Code Playgroud)

它进入控制器ConfigController.cs并调用操作WorkCodes().如果我正在做这个项目,我会写的

Html.BeginForm("WorkCodes", "Config", FormMethod.Post)
Run Code Online (Sandbox Code Playgroud)

MVC如何知道使用哪个控制器和操作而不指定它?

WorkCodes.cshtml

@{
  ViewBag.Title = "Work Codes";
}

@using (Html.BeginForm())
{
<div>
    <table style="width: 100%;" class="trHoverHighlight">
        <tbody>
            <tr>
                <td>
                    <br />
                    <div>
                        <button id="buttonCreateNew" type="button">Add New</button>&nbsp;
                        <button id="buttonReturn" type="button">Return</button>
                    </div>

                </td>
            </tr>
        </tbody>
    </table>
</div>
Run Code Online (Sandbox Code Playgroud)

}

ConfigController.cs

    public ActionResult WorkCodes()
    {
        return View(Rep.GetWorkAll(true));
    }
Run Code Online (Sandbox Code Playgroud)

这是从另一个视图中调用视图的位置:

                @foreach (var itm in (List<string>)ViewBag.ListObjects)
                {
                        <li>
                            <a href="../Config/@itm">Work Codes</a>
                        </li>  
                }
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc html-helper razor asp.net-mvc-4

4
推荐指数
1
解决办法
322
查看次数

如何隐藏文件链接的URL?

我有一个C#,Kendo MVC,Razor网站.有一个Kendo网格,其中一个单元格有一个指向pdf文件的超链接,如下所示:

<a href="http://example.com/Files/File123.pdf" target="_blank">File 123</a>
Run Code Online (Sandbox Code Playgroud)

单击该链接可在新的浏览器选项卡中打开pdf.问题是,URL在浏览器中可见,可以更改为查看另一个文件.例如,用户可以用456替换123,并参见File456.pdf.我需要做两件事:

  1. 打开pdf时隐藏URL中的文件名.
  2. 当用户将鼠标悬停在超链接上时隐藏URL.

或者,我想点击链接(没有用户看到URL)并下载文件,但我认为是下载还是查看文件是特定于浏览器的.

我只是创建一个事件来将用户发送回控制器并处理打开或下载,但是Kendo网格使其变得复杂,并且通常需要立即更改.我将就如何操纵Kendo行打开pdf提出建议,但我希望有一种简单的方法可以更改只是隐藏用户的URL.

html asp.net-mvc download hyperlink kendo-ui

4
推荐指数
2
解决办法
557
查看次数

找到所谓的方法

我有一个没有代码的ASPX页面(也就是说,没有.aspx.cs相同的名称).在代码中是这一行:

<div style="overflow: hidden; text-align: center; z-index: 105;">
    <%= MainNavBarHTML %><%= SubNavBarHTML %>
</div>
Run Code Online (Sandbox Code Playgroud)

我搜索程序的休息MainNavBarHTMLSubNavBarHTMl,却找不到他们的任何引用.我怎样才能找到填充这些元素的内容?

c# asp.net webforms

3
推荐指数
1
解决办法
107
查看次数

如何使用Flurl从API获取消息?

我已经使用C#在.NET Core 2中创建了一个API。它返回ActionResult带有状态代码和字符串消息的。在另一个应用程序中,我使用Flurl调用API。我可以获取状态码号,但是找不到消息的方式。我如何获取消息,或者需要什么更改API才能以某种方式将消息放入Flurl即可获取?

这是API的代码。在此示例中,“消息”为“对不起!”。

[HttpPost("{orderID}/SendEmail")]
[Produces("application/json", Type = typeof(string))]
public ActionResult Post(int orderID)
{
    return StatusCode(500, "Sorry!");
}
Run Code Online (Sandbox Code Playgroud)

这是另一个调用API的应用程序中的代码。我可以使用获取状态代码编号(500),(int)getRespParams.StatusCode并使用获取状态代码文本(InternalError)getRespParams.StatusCode,但是如何获得“抱歉!” 信息?

var getRespParams = await $"http://localhost:1234/api/Orders/{orderID}/SendEmail".PostUrlEncodedAsync();
int statusCodeNumber = (int)getRespParams.StatusCode;
Run Code Online (Sandbox Code Playgroud)

api api-design http-status-codes flurl asp.net-core

3
推荐指数
1
解决办法
1420
查看次数