通过"反射"我的意思是使用System.Reflection命名空间.
MSDN谈到PrivateObject类:"允许测试代码......".我比System.Reflection更喜欢PrivateObject语法,所以我想知道是否有一个真正的理由不在生产代码中使用它,并仅保留它用于单元测试?
我可以让您在生产环境中不使用PrivateObject的一个原因是需要将测试程序集(Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll)部署到生产服务器.那不是他们应该去的地方.但是,如果它不会影响您工作地点的任何政策,则由您决定是否使用它.
顺便说一句,PrivateObject在内部使用Reflection,所以无论如何你都会使用它.
我发现这个解决方案使用动态对象来调用私有成员(http://blogs.msdn.com/b/davidebb/archive/2010/01/18/use-c-4-0-dynamic-to-drastically-simplify -your-private-reflection-code.aspx),因为你不喜欢Reflection的语法.也许你应该试试.
| 归档时间: |
|
| 查看次数: |
392 次 |
| 最近记录: |