Razor语法
输出
- @expression:输出表达式的结果。
- @{ ... }:定义代码块,用于包含C#代码。
- @* ... *@:多行注释。
控制结构
- @if (condition) { ... }:条件语句。
- @foreach (var item in collection) { ... }:循环语句。
- @switch (expression) { case ... }:开关语句。
布局
- @section name { ... }:定义布局页中的命名部分。
- @RenderSection("name"):在布局页中渲染特定命名部分。
模型
- @model TypeName:指定视图使用的模型类型。
- @Html.DisplayFor(model => model.Property):显示模型属性的值。
HTML助手
- @Html.ActionLink("linkText", "action", "controller"):生成超链接。
- @Html.TextBoxFor(model => model.Property, new { @class = "form-control" }):生成文本框。
- @Html.DropDownListFor(model => model.Property, SelectList, "Select item", new { @class = "form-control" }):生成下拉列表框。
表单
- @using (Html.BeginForm("action", "controller", FormMethod.Post)) { ... }:生成表单。
安全
- @Html.Raw(htmlString):原样输出HTML,谨慎使用以防止XSS攻击。
- @Html.AntiForgeryToken():生成防跨站请求伪造(CSRF)令牌。
视图文件结构
- Views:视图文件存放的文件夹。
- Shared:共享的视图文件夹。
- ControllerName:每个控制器对应的视图文件夹。
控制器
- ActionResult:动作方法返回的结果类型,如ViewResult、JsonResult等。
- [Authorize]:指定需要身份验证才能访问的动作方法或控制器。
路由配置
// 默认路由配置
app.UseEndpoints(endpoints =>
{
endpoints.MapControllerRoute(
name: "default",
pattern: "{controller=Home}/{action=Index}/{id?}");
});
数据库
- Entity Framework Core:用于数据访问的ORM工具。
- DbContext:数据库上下文类,用于配置实体和数据库连接。
- Migration:通过迁移实现数据库结构变更。
以上只是ASP.NET MVC Razor标记的一小部分,实际上,Razor标记涵盖了更广泛的语法和功能。根据具体的应用需求,您可能需要深入了解Razor标记以及ASP.NET MVC的其他方面。您可以参考[官方文档](https://docs.microsoft.com/en-us/aspnet/core/mvc/views/razor)以获取更详细的信息。
转载请注明出处:http://www.zyzy.cn/article/detail/14871/ASP.NET Razor 标记