2012-04-10 156 views
5

我對web開發相當陌生。我正處於部署階段(用於測試)。我有幾個地方(可能是4個地方),我必須添加一個與應用程序無關的URI。所以現在,在部署時,這些需要改變。有沒有一種方法可以部署我的Silverlight應用程序並以編程方式更改設置?

是否有一種巧妙的方式來處理這個問題?通過光滑我的意思不是手動通過應用程序和更改URI或一攬子查找和替換(風險太大)。我現在只有4個地方需要更換,但這很容易改變並導致部署問題。

我正在使用Microsoft技術堆棧。 Silverlight,ASP.NET,RIA等開發完成在Visual Studio 2010.

我注意到web項目有一個漂亮的web.config轉換...這是很好的。 Silverlight資源是否有等效的機制?任何其他方式?

有什麼想法?

回答

1

我剛剛發現this post on stack overflow有關使用MS的內置轉換機制的服務引用。但實際上......對任何XML文件都是通用的。這意味着我能夠將相同的概念應用到我的自定義XML文件中,該文件包含一些設置......並且它工作得非常出色。

查看Randoms的解決方案。這不是選擇的解決方案,但它比我見過的其他任何東西都好。

1

一種方法是從託管網頁將參數傳遞給Silverlight應用程序。

<object ....> 
... 
<param name="initParams" value="prm1=http://google.com,prm2=http://bing.com" /> 
... 
</object> 

從你的Silverlight應用程序(App.xaml.csApplication_Startup方法)訪問:

foreach (var item in e.Initparams) 
{ 
    this.Resources.Add(item.Key, item.Value); 
} 

訪問參數:

var prm1 = App.Current.Resources["prm1"].ToString(); 
0

這不是太漂亮,但你可以檢查DEBUG定義(默認情況下以調試模式構建):

#if (DEBUG) 
    myUrl = "http://www.google.com"; 
#else 
    myUrl = "http://www.bing.com"; 
#endif 
相關問題