为什么Default.aspx关联的类被称为_Default?

Sac*_*a K 4 c# asp.net visual-studio-2013

我使用共享文件来保持公司名称、版权、版本……在解决方案中的所有项目之间保持同步。该文件还包含

[assembly: CLSCompliant(true)]
Run Code Online (Sandbox Code Playgroud)

我需要将我的 DLL 标记为符合 CLS。在 asp.net Web 表单应用程序中,与 Default.aspx 关联的类称为 _Default,它不符合 CLS,并会生成警告。

将类重命名为 Default 似乎没问题。有什么缺点吗?为什么这个类被称为_Default?

Hen*_*man 5

你只能侥幸逃脱,Default因为 C# 区分大小写。default是一个保留字。

生成器/模板添加了额外的内容_,因为 ASP.NET 也可以与 VB.NET 一起使用,并且Default(不区分大小写)也在 VB 中保留。

标准模板之所以如此命名,是Default.ASPX因为它是 IIS 默认配置中的“标准文档”。

您的类名实际上不必与 ASPX 文件(URL)名称匹配,您可以调用它class DefaultPage或其他名称。只需修复Inherits="..."属性即可。