2011-09-27, 19:27
  #1
Medlem
Vad innebär egentligen stack trace. Hur gör man en stack trace?
Citera
2011-09-27, 21:54
  #2
Medlem
TsopEs avatar
http://en.wikipedia.org/wiki/Stack_trace
Citera
2011-09-27, 22:17
  #3
Medlem
Citat:
Ursprungligen postat av TsopE
http://en.wikipedia.org/wiki/Stack_trace
Det var just därför jag gjorde inlägget. Förklaringen på nätet har inte fått mig och greppa detta här
Citera
2011-09-28, 00:03
  #4
Medlem
gadzooxs avatar
En stack trace visar call stack dvs historiken för hur exekveringen nått fram till en metod, alltså vilken metod som anropat vilken metod som anropat vilken osv...

Främst användbart i debuggingsammanhang där du, om du åker på ett exception någonstans långt ner i koden, enkelt kan se hur och varifrån den metoden anropades, via propertyn .StackTrace på ett exceptionobjekt.

Se exempel:

Om du träffat på en breakpoint någonstans i koden kan du se motsvarande info, dvs hur exekveringen nått dit där breakpointen sitter. Menyn Debug > Windows > Call Stack.
Citera
2011-09-28, 11:27
  #5
Medlem
Citat:
Ursprungligen postat av gadzoox
Om du träffat på en breakpoint någonstans i koden kan du se motsvarande info, dvs hur exekveringen nått dit där breakpointen sitter. Menyn Debug > Windows > Call Stack.

Hur går jag in steg för steg för att börja stack trace i visual studio 2010?
Citera
2011-09-28, 13:37
  #6
Medlem
TsopEs avatar
Stack Trace är ett objekt som du kan titta på när du vill under tiden du debuggar kallas det Call Stack. Du kan kolla på den precis när du vill.

När du däremot får ett exception kastas det en Stack Trace i exceptionet som du oxå kan kolla på...

Så med andra ord det är inget du gör.
Exempel på en Stack Trace.

Kod:
System.ArgumentException: The parameters dictionary contains a null entry for parameter 'id' of non-nullable type 'System.Int32' for method 'System.Web.Mvc.ActionResult Raw(Int32)' in 'Razor.Controllers.CodeController'. An optional parameter must be a reference type, a nullable type, or be declared as an optional parameter.
Parameter name: parameters
   at System.Web.Mvc.ActionDescriptor.ExtractParameterFromDictionary(ParameterInfo parameterInfo, IDictionary`2 parameters, MethodInfo methodInfo)
   at System.Linq.Enumerable.WhereSelectArrayIterator`2.MoveNext()
   at System.Linq.Buffer`1..ctor(IEnumerable`1 source)
   at System.Linq.Enumerable.ToArray[TSource](IEnumerable`1 source)
   at System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext controllerContext, IDictionary`2 parameters)
   at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext controllerContext, ActionDescriptor actionDescriptor, IDictionary`2 parameters)
   at System.Web.Mvc.ControllerActionInvoker.<>c__DisplayClass15.<InvokeActionMethodWithFilters>b__12()
   at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodFilter(IActionFilter filter, ActionExecutingContext preContext, Func`1 continuation)
   at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodWithFilters(ControllerContext controllerContext, IList`1 filters, ActionDescriptor actionDescriptor, IDictionary`2 parameters)
   at System.Web.Mvc.ControllerActionInvoker.InvokeAction(ControllerContext controllerContext, String actionName)
Citera
2011-10-03, 08:35
  #7
Medlem
Ahaa så i vilket fönster visas det
Citera
2011-10-03, 10:45
  #8
Medlem
gadzooxs avatar
Citat:
Ursprungligen postat av donderma
Ahaa så i vilket fönster visas det
Läste du ens mitt inlägg? Har ju redan förklarat det.
Citera
2011-10-26, 23:47
  #9
Medlem
Citat:
Ursprungligen postat av donderma
Ahaa så i vilket fönster visas det

Jag felsöker genom att sätta en breakpoint i catch-satserna och hålla musen över exceptionobjektet som tidigare förklarats att man kan göra. Sen väljer jag inner exception och visar stack trace för att få mer information om kraschen.
Citera

Skapa ett konto eller logga in för att kommentera

Du måste vara medlem för att kunna kommentera

Skapa ett konto

Det är enkelt att registrera ett nytt konto

Bli medlem

Logga in

Har du redan ett konto? Logga in här

Logga in