我有一项财产:
public Foo My Foo{ get; set; }我想监控它的设置操作,但是断点没有解决它,如何在不改变代码的情况下监视它?
发布于 2011-12-14 08:53:01
(visual菜单)调试->新断点->的功能.
getter:ClassName.get_PropertyName()在您的示例中,这将是Class.get_MyFoo()
setter:ClassName.set_PropertyName(PropertyType)在您的示例中,这将是Class.set_MyFoo(Foo)
发布于 2011-12-14 08:10:07
据我所知你不能。如果您希望该属性执行任何非平凡的操作,则需要该属性的完全实现,而不是自动实现的。当然,这并不难--自动实现的属性只相当于:
private Foo myFoo;
public Foo MyFoo
{
get { return myFoo; }
set { myFoo = value; }
}因此,只需将其转换为该表单并添加所需的任何代码(日志记录等)即可。
发布于 2011-12-14 08:18:48
如果您无法修改现有代码,并且仍然希望能够拦截对现有方法的调用,则可以签出PostSharp或分析器API。
https://stackoverflow.com/questions/8501174
复制相似问题