我在VS2012(Premium,Update 2)中创建了一个新项目/解决方案,然后选择ASP.NET MVC 4 Web Application
模板。在Content文件夹中创建的Site.css不包含display-label
,editor-label
,editor-field
等的定义。但是当我让VS2012创建一个新视图时,它会创建一个使用这些类的视图。
这是正常行为吗?或者我的VS2012安装有问题吗?
如果我创建新的ASP.NET MVC 3 Web Application
,则Site.css 包含定义。
我相信新项目内容来自C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\ProjectTemplates\CSharp\Web\1033\MvcWebApplicationProjectTemplatev4.1.cshtml\Content
。我计算机上该文件夹中的Site.css文件日期为2013年2月19日12:36,大小为13.944字节。你的电脑有什么不同吗?
我发现this question似乎相似,但在那种情况下,来自MVC3应用程序的代码已迁移到MVC4。在我的情况下,我只是创建了一个开箱即用的新MVC4应用程序。
答案 0 :(得分:1)
这可能不是一个特别有帮助的答案,但看起来您所看到的是预期的行为。我刚刚在MVC3和MVC4中创建了VS2010和VS2012中的项目,看起来这些类的样式已经从MVC4中删除了,可能是因为它们的初始样式就是这样:
.display-label,
.editor-label {
margin: 1em 0 0 0;
}
.display-field,
.editor-field {
margin: 0.5em 0 0 0;
}
将没有样式的类自动添加到这些元素中并没有什么坏处,但它确实提供了一个默认钩子,供您应用自己的样式,这可能是他们离开它们的原因。
可悲的是,这并不是release notes for ASP.NET MVC 4中提到的。