Windows Phone 7 Application Lifecycle: Listing 1

Saving transient application state.

private DateTime sessionStartedAt;
private double ActiveSessionDuration {
  get { return DateTime.Now.Subtract(sessionStartedAt).TotalMilliseconds; }
  set { sessionStartedAt = DateTime.Now.AddMilliseconds(-value); }
}

private void Application_Launching(object sender, LaunchingEventArgs e) {
  sessionStartedAt = DateTime.Now;
}

private void Application_Activated(object sender, ActivatedEventArgs e) {
  ActiveSessionDuration=
    (double)PhoneApplicationService.Current.State["SessionDuration"];
}

private void Application_Deactivated(object sender, DeactivatedEventArgs e) {
  PhoneApplicationService.Current.State["SessionDuration"] = 
    ActiveSessionDuration;
}

private void Application_Closing(object sender, ClosingEventArgs e){
  Debug.WriteLine("Session active for: " + DateTime.Now.Subtract(sessionStartedAt).TotalSeconds);
}
comments powered by Disqus

Featured

  • Get Started Using .NET Aspire with SQL Server & Azure SQL Database

    Microsoft experts are making the rounds educating developers about the company's new, opinionated, cloud-ready stack for building observable, production ready, distributed, cloud-native applications with .NET.

  • Microsoft Revamps Fledgling AutoGen Framework for Agentic AI

    Only at v0.4, Microsoft's AutoGen framework for agentic AI -- the hottest new trend in AI development -- has already undergone a complete revamp, going to an asynchronous, event-driven architecture.

  • IDE Irony: Coding Errors Cause 'Critical' Vulnerability in Visual Studio

    In a larger-than-normal Patch Tuesday, Microsoft warned of a "critical" vulnerability in Visual Studio that should be fixed immediately if automatic patching isn't enabled, ironically caused by coding errors.

  • Building Blazor Applications

    A trio of Blazor experts will conduct a full-day workshop for devs to learn everything about the tech a a March developer conference in Las Vegas keynoted by Microsoft execs and featuring many Microsoft devs.

  • Gradient Boosting Regression Using C#

    Dr. James McCaffrey from Microsoft Research presents a complete end-to-end demonstration of the gradient boosting regression technique, where the goal is to predict a single numeric value. Compared to existing library implementations of gradient boosting regression, a from-scratch implementation allows much easier customization and integration with other .NET systems.

Subscribe on YouTube