IIS文件夹被添加到可点击的行链接引导程序

时间:2018-12-05 15:44:25

标签: c# asp.net iis model-view-controller

由于某些原因,当我单击该行时,iis网站的子文件夹中的链接会添加到iis网站的子文件夹中,您将在此处看到我的html。

@foreach (var item in Model.SOPItems)
{


            <tr class="clickable-row" data-href="Order" data-ono="@item.OrderNumber" data-ino="@item.ItemNumber" data-filter="@ViewBag.CategoryFilter">

                    <td>
                        @Html.DisplayFor(modelItem => item.Description)
                    </td>
                    <td>
                        @Html.DisplayFor(modelItem => item.CustomerName)
                    </td>
                    <td>
                        @Html.DisplayFor(modelItem => item.QtyOrder)
                    </td>
                    <td>
                        @Html.DisplayFor(modelItem => item.Comment1)
                    </td>
                    <td>
                        @Html.DisplayFor(modelItem => item.OrderNumber)
                    </td>
                    <td>
                        @Html.DisplayFor(modelItem => item.Comment2)
                    </td>
                    <td>
                        @Html.DisplayFor(modelItem => item.QtyDelivered)
                    </td>
                    <td>
                        @Html.DisplayFor(modelItem => item.QtyAllocated)
                    </td>
                    <td>
                        @Html.DisplayFor(modelItem => item.QtyOutstanding)
                    </td>
                    <td>
                        @Html.DisplayFor(modelItem => item.CustomerOrderNumber)
                    </td>
                    <td>
                        @Html.DisplayFor(modelItem => item.OrderDate)
                    </td>
                    <td>
                        @Html.DisplayFor(modelItem => item.StockCode)
                    </td>
                    <td>
                        @Html.DisplayFor(modelItem => item.PartsCut)
                    </td>
                    <td>
                        @Html.DisplayFor(modelItem => item.TackedUp)
                    </td>
                    <td>
                        @Html.DisplayFor(modelItem => item.ItemNumber)
                    </td>
                </tr>
            }
    </tbody>
</table>    

您可以在这里看到我将网站设置为网站。

enter image description here

在我点击链接的正确路径之前,链接位于表格中,数据如上面的html代码所示。

enter image description here

但是,当我单击链接后,它的意思是应该包含错误的文件夹。可点击的行在后台如何工作,即使没有什么页面也无法进入。

enter image description here

如果还有错误,您还将在这里看到我的路线。

Routes.cs

public static void RegisterRoutes(RouteCollection routes)
{
        routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

        routes.MapRoute(
            name: "Default",
            url: "{controller}/{action}/{id}",
            defaults: new { controller = "Login", action = "Index", id = UrlParameter.Optional }
        );

        routes.MapRoute(
            name: "Filter",
            url: "{controller}/{action}/{filter}",
            defaults: new { controller = "Home", action = "Filtered", filter = UrlParameter.Optional }
        );
        routes.MapRoute(
            name: "StockOrderDelete",
            url: "{controller}/{action}/{id}/{filter}",
            defaults: new { controller = "Home", action = "StockOrderDelete", id = UrlParameter.Optional, filter = UrlParameter.Optional }
        );

        routes.MapRoute(
            name: "Order",
            url: "{controller}/{action}/{oNo}/{iNo}/{filter}",
            defaults: new { controller = "Home", action = "Order", oNo = UrlParameter.Optional, iNo = UrlParameter.Optional, filter = UrlParameter.Optional }
        );

        routes.MapRoute(
            name: "CustomerSearchResults",
            url: "{controller}/{action}/{customer}",
            defaults: new { controller = "Home", action = "CustomerSearchResults", customer = UrlParameter.Optional }
        );

        //routes.MapRoute(
        //    name: "StockLevelCategories",
        //    url: "{controller}/{action}",
        //    defaults: new { controller = "Home", action = "StockIndex", customer = UrlParameter.Optional }
        //);
    }
}

现在在安装它的主站点上,将其配置为应用程序,但是我有Windows 10专业版和IIS 10,除非看不到某些东西,否则我看不到将站点隐蔽到应用程序的选项。

有人可以告诉我可点击行的工作方式以及为什么将其添加到应用程序活动文件夹web.som中。

IIS版本 enter image description here

显示可以正常工作并可以正常解决的实时站点配置。值得注意的是,它具有开发版本所没有的虚拟路径属性。

enter image description here

1 个答案:

答案 0 :(得分:0)

对于其他可能会发现此有用的人,请检查您的javascript文件,我发现它潜伏在其中,并将文件夹附加到字符串中。一旦我删除,那很好!我讨厌那些硬代码使其他程序员难以接管项目的程序员!

$(".clickable-row").click(function () {
    debugger;
    var oNo = $(this).data("ono");
    var iNo = $(this).data("ino");
    var filter = $(this).data("filter");

    if (filter == -1)
    {
        return
    }

    var location = window.location.protocol + "//" + window.location.host + "/Web.SOM/Home/" + $(this).data("href")+"?ono="+oNo+"&ino="+iNo + "&filter="+filter;
    window.document.location = location;

});