Ask Kathleen

How-To Q&A: Silverlight Startup and Moving Troubles

Kathleen Dollard tackles a pair of questions relating to cryptic errors produced by Silverlight.

A reader asks: I’m moving a Silverlight project from Visual Studio 2008 to 2010 and the Editable and Display attributes are not found on compile. System.Data.Annotations.dll is referenced and I do have the correct using statements. This is happening in a file that is linked between Silverlight and the server and occurs only on the server. Do you know what’s going on?

Kathleen Answers: Check the target versions of the framework to be sure you’re targeting the correct version. While Visual Studio 2010 can target earlier versions of the .NET Framework, you may have a mismatched set of assemblies. Visual Studio does not change the target framework when moving from Visual Studio 2008 to Visual Studio 2010.

A word of caution about Visual Studio versions and .NET Framework targeting. While you can target earlier versions of the .NET Framework with Visual Studio 2010, opening a project in Visual Studio 2010 changes the project and assembly files so the project cannot be opened in Visual Studio 2008 (or in earlier versions of the framework). Since most organizations can’t simultaneously upgrade all programmers, this means upgrading on a project by project basis, not an individual by individual basis. Use source control, because it will be very easy for people to prematurely move a project into VS2010.


A reader asks: I am getting the following error when I start up my Silverlight application.


[Click on image for larger view.]
Figure 1.Mystery error at Silverlight startup.

Do you know what might cause this?

Kathleen Answers: One of the most common reasons for this message is that the startup object is incorrect, possibly because you changed namespaces or renamed the startup object. You set the startup object on the Silverlight tab or the Project Properties dialog. Since the startup object combo box contains the valid targets, resetting the startup object is a quick way to bypass any typos that may have been introduced.

A less likely possibility is that the xap file used for deployment is incorrectly built or corrupt. While you could explore the manifest and ensure all the files marked as assembly parts are present, deleting and recreating your xap file will probably also do the trick. Since the xap file is actually a zip file, so you can explore it with Windows File Explore if you rename a copy to have a .zip extension.

About the Author

Kathleen is a consultant, author, trainer and speaker. She’s been a Microsoft MVP for 10 years and is an active member of the INETA Speaker’s Bureau where she receives high marks for her talks. She wrote "Code Generation in Microsoft .NET" (Apress) and often speaks at industry conferences and local user groups around the U.S. Kathleen is the founder and principal of GenDotNet and continues to research code generation and metadata as well as leveraging new technologies springing forth in .NET 3.5. Her passion is helping programmers be smarter in how they develop and consume the range of new technologies, but at the end of the day, she’s a coder writing applications just like you. Reach her at [email protected].

comments powered by Disqus

Featured

  • Full Stack Hands-On Development with .NET

    In the fast-paced realm of modern software development, proficiency across a full stack of technologies is not just beneficial, it's essential. Microsoft has an entire stack of open source development components in its .NET platform (formerly known as .NET Core) that can be used to build an end-to-end set of applications.

  • .NET-Centric Uno Platform Debuts 'Single Project' for 9 Targets

    "We've reduced the complexity of project files and eliminated the need for explicit NuGet package references, separate project libraries, or 'shared' projects."

  • Creating Reactive Applications in .NET

    In modern applications, data is being retrieved in asynchronous, real-time streams, as traditional pull requests where the clients asks for data from the server are becoming a thing of the past.

  • AI for GitHub Collaboration? Maybe Not So Much

    No doubt GitHub Copilot has been a boon for developers, but AI might not be the best tool for collaboration, according to developers weighing in on a recent social media post from the GitHub team.

  • Visual Studio 2022 Getting VS Code 'Command Palette' Equivalent

    As any Visual Studio Code user knows, the editor's command palette is a powerful tool for getting things done quickly, without having to navigate through menus and dialogs. Now, we learn how an equivalent is coming for Microsoft's flagship Visual Studio IDE, invoked by the same familiar Ctrl+Shift+P keyboard shortcut.

Subscribe on YouTube