不理解简单的页面
本文关键字:简单 不理解 | 更新日期: 2023-09-27 17:59:12
我正在努力理解教程
http://www.asp.net/web-pages/tutorials/basics/2-introduction-to-asp-net-web-programming-using-the-razor-syntax
我有一个测试页面,我正在试用
@{
Layout = null;
}
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width" />
<title>Test</title>
</head>
<body>
<div>
Hello there
</div>
</body>
</html>
但当我运行页面时,没有出现
F12显示:
<html>
<head></head>
<body>
</body>
</html>
我不明白我做错了什么?
我也在尝试这个测试项目。。。同样的问题:https://github.com/sergiotapia/MicroShopping
不确定要对顶部的@{Layout=null;}部分做什么,请尝试删除它。如果你想在HTML部分显示一个变量,那就是你想要定义该变量的地方(至少在教程中他们是这样做的),如下所示:
@{ var myValue = "There"; }
然后通过调用HTML部分中的变量
<div>
Hello @myValue
</div>
编辑:随着您的学习,另一个好习惯是使用调试器(如果您使用的是chrome,f12)。很多时候,当出现问题时,它会帮助你确定是什么导致了问题。
如果您在WebMatrix中创建了页面,请确保您正在"运行"正确的文件。默认情况下,如果只单击运行,则default.cshtml
文件将在浏览器中启动。如果要启动其他文件,可以在文件资源管理器中右键单击该文件并选择在浏览器中启动,也可以确保它是文件工作区中的当前页面并点击Ctrl + F12
。
在你的问题中有一些东西并不匹配,这让我认为你在WebForms应用程序中托管了一个ASP.NET MVC应用程序。(我可能错了)。此外,我自己在MVC4中测试了这一点,它运行得很完美,没有任何问题。
在ASP.NET MVC中,无法将.cshtml
文件设置为默认文件。原因是.cs.HTML文件仅在控制器内部用于呈现HTML视图,而不是相反。这意味着一个视图可以由多个控制器使用。默认路由只能在~/App_Start
文件夹中的RouteConfig.cs
文件中更改。
public class RouteConfig
{
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
}
}
当您说将.cshtml
文件设置为默认文件时,是这样做的吗?