我在构建ASP.net网站时遇到错误:
标识符'__ASP'不符合CLS
我的代码中没有标识符__ASP
。
我知道为什么
__ASP
不符合CLS(以_
开头)。我需要弄清楚谁在发射它,以及如何:
- 将其更改为不以下划线开头,或
- 私有化
我也可以停止将程序集标记为CLSCompliant - 但我不会
警告未列出任何有用的文件:
4d48b87d\63ccbbb9\App_Code.x0tl4q2v.49.cs line 15
显然,这不是我创建的文件。如何识别此__ASP
标识符的位置,并将其删除,或将其设为私有?
我不是唯一遇到__ASP问题的人:
答案 0 :(得分:1)
“__ASP”文件由运行时ASP.NET编译器创建,该编译器将* .aspx,* .ascx,*。master文件转换为源自CodeBehind类(或MVC,来自ViewPage类)的.NET类)。编译器构建系统还在运行时编译App_Code
文件(而不是在IDE中编译它们)。
但是,除非已在某处将[CLSCompliant]属性添加到程序集中,否则不应在ASP.NET应用程序中获取CLS兼容性消息。你有一个AssemblyInfo.cs
文件,如果有的话,它在哪里?
编辑:
我刚看到你说你的程序集被标记为CLSCompliant。嗯,那是你的问题。您需要删除它,因为ASP.NET的批处理编译文件不符合要求:它们不需要。终端程序集(即那些未被其他程序集引用的程序集,通常因为它们是“应用程序”程序集)不需要是CLSCompliant。
为什么你说你“不会”删除属性?没有它是不合适的。