ASP.Net Visual Studio 2017 MVC路由视图尚未在IIS /服务器上打开

问题描述 投票:0回答:1

我是ASP.Net MVC的新手。我搜索并审查了很多答案,但仍无法找到解决方案。

我有一个ASP.Net MVC应用程序,在部署时本地行为不同。尝试在部署顶级Azure时向其他托管服务提供商打开“公司\索引”视图时,找不到404,但在Visual Studio / IIS Express中本地运行时,它可以正常工作。

我正在使用初始“​​新应用程序向导”提供的默认路由。我有什么遗漏可能意味着我在点击http:\ myappname \ Companies \ Index或http:\ myname \ Companies时获得404?

行动我正在尝试点击打开新的“公司”视图......

@{
    ViewData["Title"] = "Manage";
}

<h2>Manage</h2>
<p>Choose an item below to configure settings</p>
<div class="">
    <ul>
        <li>@Html.ActionLink("Companies", "Index", "Companies") </li>
    </ul>
</div>

Visual Studio中应用程序的目录结构...

directory structure

路由...

  public void Configure(IApplicationBuilder app, IHostingEnvironment env)
        {
        // Set default erorr handler page
        app.UseExceptionHandler("/Error.html");

        var configuration = new ConfigurationBuilder()
            .AddEnvironmentVariables()
            .AddJsonFile(env.ContentRootPath+ "/config.json")
            .Build();

        // Set Developer Exceptions on if in development mode
        if (configuration.GetValue<bool>("FeatureToggles:EnableDeveloperExceptions"))
        {
            app.UseDeveloperExceptionPage();
        }

        app.UseStaticFiles();

        app.UseMvc(routes =>
        {
            routes.MapRoute(
                name: "default",
                template: "{controller=Home}/{action=Index}/{id?}");

            });
       }
    }
}

控制器索引操作我试图调用以返回公司\索引视图...

using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.Rendering;
using Microsoft.EntityFrameworkCore;
using Daylight.Data;
using Daylight.Models;

namespace Daylight.Controllers
{
public class CompaniesController : Controller
{
    private readonly DaylightDataContext _context;

    public CompaniesController(DaylightDataContext context)
    {
        _context = context;
    }

    // GET: Companies
    public async Task<IActionResult> Index()
    {
        return View(await _context.Companies.ToListAsync());
    }

我会非常感谢任何指针!

asp.net-mvc asp.net-mvc-routing
1个回答
0
投票

事实证明这是由于网站无法访问数据库,因此无法将数据返回到视图,因此视图显示为空白。

© www.soinside.com 2019 - 2024. All rights reserved.