问题标签 [razor]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
7 回答
5032 浏览

c# - 由于不区分大小写的 URL 和默认值,如何避免 ASP.NET MVC 中的重复内容?

编辑:现在我需要真正解决这个问题,我做了更多调查并想出了一些减少重复内容的方法。我在我的博客上发布了详细的代码示例:Reducing Duplicate Content with ASP.NET MVC

第一篇文章 - 如果我把它标记错或标记得很差,那就放轻松:P

在 Microsoft 的新 ASP.NET MVC 框架中,似乎有两件事可能会导致您的内容在多个 URL 上提供(Google 会对此进行惩罚并将导致您的 PageRank 在它们之间拆分):

  • 不区分大小写的 URL
  • 默认网址

您可以设置默认控制器/操作来为您的域根目录的请求提供服务。假设我们选择 HomeController/Index。我们最终得到以下提供相同内容的 URL:

  • mydomain.com/
  • mydomain.com/Home/Index

现在,如果人们开始链接到这两个,那么 PageRank 将被拆分。谷歌还会认为它重复内容并惩罚其中之一以避免结果重复。

最重要的是,这些 URL 不区分大小写,因此我们实际上也为这些 URL 获得了相同的内容:

  • mydomain.com/Home/Index
  • mydomain.com/home/index
  • mydomain.com/Home/index
  • mydomain.com/home/Index
  • (名单还在继续)

所以,问题是......我如何避免这些处罚?我想:

  • 将默认操作的所有请求(301 状态)重定向到相同的 url
  • 所有 URL 都区分大小写

可能的?

0 投票
8 回答
171528 浏览

asp.net-mvc - 用于的 HTML 助手

HTMLHelper文件上传吗?具体来说,我正在寻找替换

使用 ASP.NET MVC HTMLHelper。

或者,如果我使用

文件上传的 HTML 控件是什么?

0 投票
9 回答
138270 浏览

asp.net - 在 ASP.NET MVC 中服务 favicon.ico

关于如何在 ASP.NET MVC 中服务 favicon.ico 的最终/最佳建议是什么?

我目前正在执行以下操作:

  • 在我的 RegisterRoutes 方法的最开始添加一个条目:

    /li>
  • 将 favicon.ico 放在我的应用程序的根目录中(这也将成为我的域的根目录)。

我有两个问题:

  • 除了我的应用程序的根目录之外,没有办法将 favicon.ico 放在其他地方。Content与和处于同一水平非常令人讨厌Controllers
  • 这个IgnoreRoute("favicon.ico")陈述是否足够 - 或者我也应该按照Phil Haack 的博客文章中的讨论执行以下操作。我不知道曾经在根目录以外的任何目录中看到过对 favicon.ico 的请求 - 这将使这变得不必要(但知道如何去做是件好事)。

    /li>
0 投票
2 回答
136228 浏览

asp.net-mvc - 如何向 MVC 的 HTML Helpers 生成的 HTML 元素添加类属性?

ASP.NET MVC 可以使用 HTML Helpers 生成 HTML 元素,例如@Html.ActionLink()@Html.BeginForm()等等。

我知道我可以通过创建一个匿名对象来指定表单属性并将该对象传递给(在这种情况下为第四个)参数,其中为元素htmlAttributes指定一个:id

但是class属性呢?显然这不起作用:

因为当我的视图被请求时,它只会引发随机语法错误,因为它在遇到 C# 关键字后会期待其他东西class

我也试过:

但它们也不起作用,因为下划线被 dashes 取代

我知道我也可以手动编写 HTML 元素或将表单包装在 a<div class="myClass">中,但我仍然有兴趣知道它应该如何完成。

0 投票
7 回答
74523 浏览

c# - Html.LabelFor 指定文本

任何人都知道如何在使用Html.LabelFor(c=>c.MyField). 它MyField可能不适合在屏幕上显示,您可能想要“The Super Fantastic Field”,但似乎没有任何重载。

有任何想法吗?

0 投票
6 回答
107074 浏览

asp.net-mvc - ASP.NET MVC 视图引擎比较

我一直在 SO 和 Google 上搜索可用于 ASP.NET MVC 的各种视图引擎的细分,但除了简单的高级描述视图引擎是什么之外,我没有找到更多。

我不一定要寻找“最佳”或“最快”,而是在各种情况下对主要参与者(例如默认的 WebFormViewEngine、MvcContrib 视图引擎等)的优势/劣势进行一些现实世界的比较。我认为这对于确定从默认引擎切换是否对给定项目或开发组有利是非常有帮助的。

有没有人遇到过这样的比较?

0 投票
11 回答
144811 浏览

c# - 已按下提交按钮的 MVC

我的 MVC 表单上有两个按钮:

从我的控制器操作中,我如何知道按下了哪一个?

0 投票
3 回答
5196 浏览

c# - 如何找出 ASP.NET MVC 视图中的错误计数?

我想使用类似以下的字符串来格式化我的验证摘要的标题:

如何在不在控制器中执行并将其添加到 View Data 的情况下找出错误数量?

0 投票
1 回答
1832 浏览

c# - 如何验证 MVC2 表单中的多选?

这似乎是一个非常基本的场景,但我认为它没有一个圆满的结局。

我有一个简单的项目类:

我想确保至少选择了一个相关类别。如何在视图中使用 Html.EnableClientValidation() 和模型中的装饰器来验证这一点?如果这是不可能的,那么后备是什么?

同样令人沮丧,并且可能是验证的障碍是我做不到......

...因为这将尝试将 Project.Categories 表单值(字符串数组)与应该是 Category 类型相关联,但不能(我收到错误“The parameter conversion from type 'System.String ' 键入失败,因为没有类型转换器可以在这些类型之间转换")。因此,我必须将表单名称更改为 m.Categories 之类的名称,从而与 Product 类分离,因此我想用任何验证逻辑来​​装饰它。

哇,对我来说这太疯狂了。我们不能使用 MVC2 装饰器验证一个简单的多选列表吗?

0 投票
13 回答
70637 浏览

c# - 在视图或控制器中获取当前区域名称

如何在视图或控制器中获取当前区域名称?

有没有类似ViewContext.RouteData.Values["controller"]地区的东西?