首页 新闻 会员 周边

Asp.Net MVC中在设置html标签的class时会这样么"...@class='XXXX'..."

0
[已解决问题] 解决于 2015-09-13 07:58

Asp.Net MVC Razor中在设置html标签的class时会这样么"...@class='XXXX'..."

问题是,我记得这个class前的“@”是在一个类里设置的一个静态变量,这个类是哪个类?

北在北方的主页 北在北方 | 初学一级 | 园豆:180
提问于:2015-09-08 09:18
< >
分享
最佳答案
0

.......这里的@是关键字转义为标识符的意思..因为class是关键字.所以不能直接作为标识符使用,只能通过@转移为标识符

奖励园豆:5
吴瑞祥 | 高人七级 |园豆:29449 | 2015-09-08 09:37

我知道这个字符是干什么的,我记得这个字符是存储在一个静态类的属性里,是可以改变的,但我忘记是哪个类了,我问的就是这个类是哪个类

北在北方 | 园豆:180 (初学一级) | 2015-09-11 10:46

@北在北方: ...这个东西我一直以为是语法关键字.

吴瑞祥 | 园豆:29449 (高人七级) | 2015-09-11 12:05

@吴瑞祥: 不是关键字,在通过HtmlHelper用匿名类设置html属性的时候如果设置html属性data-property是,只有使用data_property才会成功,这有注意吗,这里的"_"会被替换为“-”,这个“_”和用“class”时使用的“@”是在同一个类里设置的,我见过,但忘记是哪个类了

北在北方 | 园豆:180 (初学一级) | 2015-09-12 14:25

@北在北方: 这个@并不单是在mvc项目里才有,在所有地方当你想使用系统关键字作为标识符时,都需要使用@转义,所以我觉得可能是在某个地方配置的,比如你定义一个类,然后有个字段要起名字叫class时,就会让你用@

吴瑞祥 | 园豆:29449 (高人七级) | 2015-09-12 14:37

@吴瑞祥: 忘记说了我问的问题背景是Razor

北在北方 | 园豆:180 (初学一级) | 2015-09-12 15:06

@北在北方: 

不知道你是为什么要找.反射在razor里能找到很多@的相关定义.转义符定义的也有多个地方,你看看是哪个吧,

这个应该是razor引擎解析C#语法时用的.都是常量

吴瑞祥 | 园豆:29449 (高人七级) | 2015-09-12 15:30

@吴瑞祥:我只是好奇,不过怎么看?

北在北方 | 园豆:180 (初学一级) | 2015-09-12 15:46

@北在北方: 下歌ilspy,加载system.web.razor,搜索@ 常量

吴瑞祥 | 园豆:29449 (高人七级) | 2015-09-12 16:33
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册