无法打开cshtml页面

时间:2015-07-10 09:03:21

标签: c# asp.net asp.net-mvc-4 razor asp.net-mvc-5

我开发了一个应用程序并部署到云端。默认情况下,索引页面正在加载,但是一旦加载了索引页面,它就会打开其他页面(cshtml页面)。但我得到空白页面。请帮忙

    Index.cshtml code

        <!DOCTYPE html>
        <html lang="en">
        <head>
            <meta charset="utf-8">
            <meta http-equiv="X-UA-Compatible" content="IE=edge">
            <meta name="viewport" content="width=device-width, initial-scale=1">
            <title>Create Invoice Online for Free & Download PDF</title>
            <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
            <link rel="stylesheet" type="text/css" href="../Content/bootstrap.css" />
            <link rel="stylesheet" type="text/css" href="../Content/bootstrap-responsive.min.css" />
            <link rel="stylesheet" type="text/css" href="../Content/quick-invoice.css" />

            <script type="text/javascript" src="../Content/jquery.js"></script>
            <script type="text/javascript" src="../Content/bootstrap.min.js"></script>
            <meta name="google-site-verification" content="FB0t_l2pYlfmLe1hzPyjLXXhDF8Bufut_nDhCP5brrQ" />
        </head>
        <body>
            <div class="navbar navbar-inverse navbar-fixed-top">
                <div class="navbar-inner">
                    <div class="container">
                        <a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
                            <span class="icon-bar"></span>
                            <span class="icon-bar"></span>
                            <span class="icon-bar"></span>
                        </a>
                        <a class="brand" href="/">Invoices generator</a>
                        <div class="nav-collapse">
                            <ul class="nav">
                                <li class="active"><a href="/"><i class="icon-home icon-white"></i>Home</a></li>
                                <li><a href="/CreateInvoices/Create"><i class="icon-file icon-white"></i> Invoice Templates</a></li>
                            </ul>
                        </div>
                    </div>
                </div>
            </div>
            <div class="container layout">
                <div class="row">
                    <div class="span9">
                        <div class="container-narrow">
                            <div class="container-narrow jumbotron">
                                <h1>Shopping Cart Online Invoice Generator</h1>

                                <p class="lead">Create &amp; Send your invoice without having to register, and download as <strong>PDF, </strong>quickly &amp; easily for free, email your invoice &nbsp;Select an invoice template from our invoices templates list, Save or send your invoice in minutes</p>

                                <hr />      <a href="/CreateInvoices/Create" class="btn btn-primary btn-large">Create your invoice</a>
                                <hr />

                            </div>

                        </div>
                        <div class="pop-layouts">
                            <h4>Invoice Templates</h4>
                            <ul class="thumbnails">
                                <li>
                                    <h4>Shopping Cart Invoice Template</h4>
                                    <a class="thumbnail" href="create" title="Shopping Cart Invoice Template">
                                        <img src="../Images/057e7_b4a13_1.jpg" alt="" date-large="../Images/4dad1_733d6_1.png" />
                                    </a>
                                    <div class="caption">
                                        <!--<a href="/templates/preview/1" class="btn btn-info" target="_blank"><i class="icon-eye-open icon-white"></i> Preview</a>-->
                                        <a href="/CreateInvoices/Create" class="btn btn-success btn-block"><i class="icon-plus-sign icon-white"></i> Create</a>
                                    </div>

                                </li>
                            </ul>

                        </div>
                    </div>
                </div>
            </div>

            <script type="text/javascript">

                (function (i, s, o, g, r, a, m) {
                    i['GoogleAnalyticsObject'] = r; i[r] = i[r] || function () {
                        (i[r].q = i[r].q || []).push(arguments)
                    }, i[r].l = 1 * new Date(); a = s.createElement(o),
                              m = s.getElementsByTagName(o)[0]; a.async = 1; a.src = g; m.parentNode.insertBefore(a, m)
                })(window, document, 'script', '//www.google-analytics.com/analytics.js', 'ga');

                ga('shopping-cart-invoices', 'UA-47492117-1', 'mybluemix.net');
                ga('send', 'pageview');



            </script>

        </body>
    </html>

Startup.cs

using System;
using Microsoft.AspNet.Mvc;
using Microsoft.AspNet.Builder;
using Microsoft.Framework.DependencyInjection;
using Microsoft.AspNet.StaticFiles;

public class Startup
{
    public void Configure(IApplicationBuilder app)
    {
        app.UseServices(services =>
        {
            services.AddMvc();
        });

        app.UseFileServer(new FileServerOptions()
        {
            EnableDirectoryBrowsing = false,
        });

        app.Use(async (context, next) =>
        {
            Console.WriteLine(context.Request.Path);
            try
            {
                await next();
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex);
            }
        });

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

            routes.MapRoute(
                name: "Preview",
                template: "{controller=Preview}/{action=preview}/{id?}"
         );

            routes.MapRoute(
                name: "Thanks",
                template: "{controller=Thanks}/{action=Thankyou}/{id?}");
        });

    }
}
public class HomeController : Controller
{
    public ActionResult Index()
    {
        return View();
    }


}

1 个答案:

答案 0 :(得分:0)

您应该使用

@Html.actionlink("Create", "CreateInvoice") 

这将允许您声明操作和控制器

这也意味着如果操作或控制器不存在,您将获得构建错误