{"id":4374,"date":"2008-06-10T15:30:51","date_gmt":"2008-06-10T15:30:51","guid":{"rendered":"https:\/\/blogs.msdn.microsoft.com\/webdev\/2008\/06\/10\/support-configuration-specific-output-folders-in-a-silverlight-project\/"},"modified":"2008-06-10T15:30:51","modified_gmt":"2008-06-10T15:30:51","slug":"support-configuration-specific-output-folders-in-a-silverlight-project","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/dotnet\/support-configuration-specific-output-folders-in-a-silverlight-project\/","title":{"rendered":"Support configuration specific output folders in a Silverlight project"},"content":{"rendered":"<p>In Beta1, VS Silverlight tools doesn\u2019t allow users to maintain separate build output folder for different build configuration, and this causes once you switch from \u201cDebug\u201d to \u201cRelease\u201d build configuration, under ClientBin folder the existing debug assemblies will be overwritten by the release version. Unless you switch back to \u201cDebug\u201d configuration, you can\u2019t get the debug version back. This also impacts the .xap files copied to the ClientBin folder at the hosting web project. <\/p>\n<p>In Beta2, we have made several changes to improve the experiences<\/p>\n<p>1. At Silverlight project side, we don\u2019t use the \u201cClientBin\u201d folder anymore; rather, we bring back the old one of \u201cBin\u201d coming with regular client projects<\/p>\n<p>2. Underneath it, each build configuration will have its own subfolder called \u201cDebug\u201d, \u201cRelease\u201d, etc.<\/p>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/wp-content\/uploads\/sites\/16\/2019\/02\/clip_image002%5B1%5D.jpg\"><img decoding=\"async\" title=\"clip_image002[1]\" style=\"border-top-width: 0px;border-left-width: 0px;border-bottom-width: 0px;border-right-width: 0px\" height=\"177\" alt=\"clip_image002[1]\" src=\"https:\/\/devblogs.microsoft.com\/dotnet\/wp-content\/uploads\/sites\/10\/2008\/06\/clip_image0025B15D_thumb.jpg\" width=\"233\" border=\"0\" \/><\/a><\/p>\n<p>3. At a web project\u2019s side, underneath the \u201cClientBin\u201d folder, there is a subfolder created for a specific build configuration. The .xap file gets copied to there<\/p>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/wp-content\/uploads\/sites\/16\/2019\/02\/clip_image004%5B1%5D.jpg\"><img decoding=\"async\" title=\"clip_image004[1]\" style=\"border-top-width: 0px;border-left-width: 0px;border-bottom-width: 0px;border-right-width: 0px\" height=\"153\" alt=\"clip_image004[1]\" src=\"https:\/\/devblogs.microsoft.com\/dotnet\/wp-content\/uploads\/sites\/10\/2008\/06\/clip_image0045B15D_thumb.jpg\" width=\"244\" border=\"0\" \/><\/a><\/p>\n<p>4. You can feel free to switch among different build configurations. VS build will pick up the current active configuration and builds the project and copies to the hosting web project. If you use msbuild, you can pass in the preferred configuration through the command line.<\/p>\n<p>Several UI elements were also adjusted accordingly <\/p>\n<p>1. In the \u201cAdd Silverlight Application\u201d wizard, you have a checkbox to enable this. If you turn it off, you will get beta1 behavior<\/p>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/wp-content\/uploads\/sites\/16\/2019\/02\/clip_image006%5B1%5D.jpg\"><img decoding=\"async\" title=\"clip_image006[1]\" style=\"border-top-width: 0px;border-left-width: 0px;border-bottom-width: 0px;border-right-width: 0px\" height=\"363\" alt=\"clip_image006[1]\" src=\"https:\/\/devblogs.microsoft.com\/dotnet\/wp-content\/uploads\/sites\/10\/2008\/06\/clip_image0065B15D_thumb.jpg\" width=\"420\" border=\"0\" \/><\/a><\/p>\n<p>2. If you have already added a Silverlight application into a web project, you will have UI option in the property page dialog to enable this (click the \u201cChange\u2026\u201d button)<\/p>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/wp-content\/uploads\/sites\/16\/2019\/02\/clip_image008%5B1%5D.jpg\"><img decoding=\"async\" title=\"clip_image008[1]\" style=\"border-top-width: 0px;border-left-width: 0px;border-bottom-width: 0px;border-right-width: 0px\" height=\"347\" alt=\"clip_image008[1]\" src=\"https:\/\/devblogs.microsoft.com\/dotnet\/wp-content\/uploads\/sites\/10\/2008\/06\/clip_image0085B15D_thumb.jpg\" width=\"485\" border=\"0\" \/><\/a><\/p>\n<p>3. Now you are having a VS project which is configuration folder aware.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In Beta1, VS Silverlight tools doesn\u2019t allow users to maintain separate build output folder for different build configuration, and this causes once you switch from \u201cDebug\u201d to \u201cRelease\u201d build configuration, under ClientBin folder the existing debug assemblies will be overwritten by the release version. Unless you switch back to \u201cDebug\u201d configuration, you can\u2019t get the [&hellip;]<\/p>\n","protected":false},"author":404,"featured_media":58792,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[197],"tags":[7310,7278,7302],"class_list":["post-4374","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-aspnet","tag-beta-2","tag-silverlight","tag-visual-studio-2008"],"acf":[],"blog_post_summary":"<p>In Beta1, VS Silverlight tools doesn\u2019t allow users to maintain separate build output folder for different build configuration, and this causes once you switch from \u201cDebug\u201d to \u201cRelease\u201d build configuration, under ClientBin folder the existing debug assemblies will be overwritten by the release version. Unless you switch back to \u201cDebug\u201d configuration, you can\u2019t get the [&hellip;]<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/posts\/4374","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/users\/404"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/comments?post=4374"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/posts\/4374\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/media\/58792"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/media?parent=4374"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/categories?post=4374"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/tags?post=4374"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}