Re: [问题] 将 Method 命名为 Add 的问题

楼主: uranusjr (←這人是超級笨蛋)   2014-01-13 00:25:13
※ 引述《On1earth (小浅)》之铭言:
→ On1earth:不太了解“编译器产生的参考”指的是什么,那避免用Add当 01/12 19:36
→ On1earth:方法名比较好吗?谢谢。 01/12 19:38
用英文 compiler generated references 会查到比较多东西
会产生这个警告的原因是 C# 有个东西叫 extension methods
你可能用了某个会自动产生 Add 这个 method 的 extension
当你把另外一个 method 也命名为 Add 时
这个 method 会覆蓋掉原本的 extension method
这件事情本身不见得会造成什么问题 (直到你要用到那个 extension 时)
不过对于 refactoring tool 而言
如果你把某个 method 命名为 Add, 之后又要把它 refactor 为其他名称时
VS 会无法确定某些 method calls 究竟是在参照你的版本, 还是 extension 的版本
在这种状况下它就不会进行任何重命名, 可能造成 refactoring 不完整而产生 bug
这个警告是为了表达这件事情
所以没错, 你最好避免使用这个 method 名
不过如果你知道自己在做什么, 真的用下去也不见得会出事
作者: On1earth (小浅)   2014-01-12 19:36:00
不太了解“编译器产生的参考”指的是什么,那避免用Add当方法名比较好吗?谢谢。谢谢大大特地回了一篇文,我刚刚开一个空白Web专案,没加什么东西进去,还是一样有这个讯息,还有我开启Json.NET的原始码测试看看也一样,大大第二段第二行指的是扩充方法吗?还是VS的工具>扩充功能与更新的那个扩充管理员

Links booklink

Contact Us: admin [ a t ] ucptt.com