【冷门】 C# 小技巧之获取变量名称(二)

哈哈哈,我又回来了!!!!

 

上一篇博客说到 获取变量名称  常规推荐用法是 nameof()

但实际应用场景往往是多变的,在某些特定情况下 nameof()就无法满足相关需求,废话不多说上场景

1.常规做mvc对象认证的时候

 

 

 我的某个属性是实体对象 例如BasicInfo

假设 当前BasicInfo中存在Name属性

在实际应用场景中 

mvc对象认证输出:BasicInfo.Name

nameof()输出:Name

对象认证时输出看着挺好,怎么自己用nameof()的时候就短了呢?

这时候有人说啦,对象认证都能搞定的事情你搞这么多屁事干啥?

 

额,既然我都在写这个啦,肯定是有情况发生了啦

1.对象认证做不到很多业务逻辑认证,比如用户是否存在【这就是为啥要自己研究nameof什么的】

2.如果我存在多个实体对象都有同名属性;我的某个属性是实体对象 例如BasicInfo,我还有某个属性是实体对象 列如ExtendInfo

假设 当前BasicInfo和ExtendInfo中都存在Name属性

在实际应用场景中 

mvc对象认证输出:BasicInfo.Name;ExtendInfo.Name

nameof()输出:Name;Name

当然也可以强行去用户nameof

 

 这时候是不是觉得哎呀,真的不舒服。

 

感觉有点废话太多了上应用场景中的使用

根据自己当前应用场景封装一个

 

 使用效果如下:

 

 

 

 

 有点虎头蛇尾哈,一样的冷门、一样的可能会用到;如果对你有所帮助那将是我的荣幸!

 

posted @ 2020-05-11 17:24  定格幸福  阅读(1886)  评论(0编辑  收藏  举报