环境:C#/ MVC /实体框架/ Visual Studio。 我有一个变量名,在3个表(所以3个实体)中用作列名和许多“模型”类。
错误:在某些奇怪的间歇情况下,该值实际上被保存为数字后会重置为null。
问题:我想知道所有变量在赋值左侧出现的位置,或者获取值。这本身就是一个值得知道的普遍问题。
不幸的是,在VS解决方案中,变量名本身出现在164个文件的789行中。
答案 0 :(得分:3)
您可以在自定义设置程序中执行类似操作,以记录所有更改,包括调用方法。可能会影响性能,但是您可能会发现它对调试很有帮助,您只需要在一个地方进行更改,而无需在789处进行更改:
public class MyClass
{
private int _myProperty;
public int MyProperty
{
get
{
return _myProperty;
}
set
{
// using System.Diagnostics
StackTrace st = new StackTrace(); // get the current stack trace
StackFrame sf = st.GetFrame(st.FrameCount - 1); // get the last frame
Debug.WriteLine($"My Property Set by {sf.GetMethod().Name}. New value: {value}");
_myProperty = value;
}
}
}
答案 1 :(得分:0)
您没有提供太多信息,但是在Visual Studio中,您可以右键单击变量名称/属性并在解决方案中找到所有引用。
我建议在模型的属性上查找所有引用,并继续这样做,直到找到所需的内容为止。