he el código siguiente en un modelo de vista:Visual Studio ventana Watch no teniendo en cuenta usings
public Point Location
{
get
{
var rangePixels = Range * PixelsPerMile;
var xCoordinate = OwnLocation.X * MapScale + rangePixels * Math.Cos(Theta);
var yCoordinate = OwnLocation.Y * MapScale - rangePixels * Math.Sin(Theta);
return new Point(xCoordinate, yCoordinate);
}
}
Uno de los usings en la parte superior del archivo de código es System
, que contiene Math
.
Si veo Math.Sin(Theta)
en la ventana Inspección (seleccionando el código, hacer clic derecho y elegir "Add Watch"), me sale el siguiente error:
The name 'Math' does not exist in the current context
Lo que yo quiero saber es:
- ¿Este comportamiento esperado/predeterminado para Visual Studio 2010? Podría jurar que esto nunca solía ser un problema, pero tal vez siempre funcionó de esa manera y de alguna manera nunca me di cuenta.
- Si no es normal obtener este error, ¿alguna idea sobre cuál podría ser el problema? Hay un millón de configuraciones en Visual Studio, y no sabría por dónde empezar.
Debo señalar esta pregunta es vagamente similar a this, pero no estoy teniendo ningún problema pasar el ratón sobre mis variables locales, y no estoy usando PostSharp.
Editar
Acabo de intentar restablecer todos mis ajustes de Visual Studio respalda a los valores predeterminados, y sigo teniendo el mismo error. Si alguien quiere probar una prueba simple en Visual Studio, solo quiero saber si obtiene un error si agrega un reloj para Math.Sin(1)
.
Editar 2
Éstos son un par pantalla captura para mostrar lo que estoy experimentando:
Datos 3
Inter estingly, IntelliSense funciona si escribo Math.
en la ventana Inspección, pero si completo la expresión, todavía consigo el error:
Editar 4
Para hacer frente a cuestiones de Bacon:
- Obtengo el mismo comportamiento con QuickWatch e Inmediato.
- Cerrar y volver a abrir todas las ventanas no resuelve el problema.
- Estoy usando Visual Studio 2010 Professional (versión 10.0.40219.1 SP1Rel)
- Intenté dirigir .NET 4.0 Client Profile y .NET 4.0 completo. No hizo ninguna diferencia. Creé una aplicación de consola (en lugar de una aplicación WPF) dirigida a .NET 4.0 Client Profile, y finalmente, el error no ocurrió. Por lo tanto, WPF puede ser un problema (o WPF con algunas bibliotecas de terceros). (Se echa en ese lado.)
¿Qué sucede si agrega un reloj en 'System.Math.Sin (1)'? – BACON
@BACON, eso funciona bien. (Sin embargo, para los espacios de nombres más profundos se vuelve doloroso). – devuxer
¿El Quick Watch y la ventana Inmediato exhiben el mismo comportamiento? Si cierras por completo todas las ventanas Watch y las vuelves a abrir desde el menú Debug, ¿eso afecta algo? ¿Qué edición de Visual Studio 2010 estás usando? ¿Tiene el Service Pack 1 instalado? ¿Esto sucede independientemente de la versión de .NET a la que se dirige su aplicación? – BACON