2011-11-10 49 views
0

我在約束環境(VirtualBox下的win7)中工作,除了模擬器(在真實手機上調試確定)之外,一切都很好。但我對Visual Studio和.NET並不熟悉,並且希望在單獨的庫中開發所有邏輯(至少與Web,算法,數據模型交互)(以便與簡單的控制檯或WPF應用程序進行測試)。但是這裏出現了問題 - WP7庫使用特殊的解決方案(並且默認情況下,所有項目都是針對.NET Framework 4構建的,當使用.NET CF 3.7運行電話時,爲什麼?)。我應該如何設置IDE,構建跨平臺(我的意思是桌面/ Windows Phone 7)庫?在沒有模擬器的情況下爲WP7開發應用程序邏輯

回答

0

我的一位熟人建議使用Portable Library Tools,它允許爲多個目標平臺(xbox,winphone7,silverlight等)創建可移植的庫,而無需重新編譯。看起來很有希望。

2

您可以創建並行項目(一個用於桌面,一個用於電話),並將您的c#文件添加到其中一個並將它們鏈接到另一個項目中。

要添加鏈接到文件而不是複製它,請按照下列步驟操作: 右鍵單擊項目=>添加現有項目 - >選擇文件 - >單擊「添加」按鈕旁邊的下拉箭頭,然後單擊選擇「添加爲鏈接」。

爲了解決您可以定義喜歡這款手機的條件編譯符號,並在包裝​​你不兼容的代碼中的任何不兼容:

#if PHONE 
//phone code 
#else 
//desktop code 
#endif 

缺點是在項目中添加一個新的代碼文件後,你需要把它從鏈接另一個平臺的核心項目。

我不認爲有這樣做的更簡單的方法。

+0

我不打算寫任何桌面相關的代碼,所以沒有硬編碼切換。我應該複製文件?是否可以使用相同的文件,只使用不同的項目文件? –

+0

是的,這就是我的意思:在沒有文件的項目中:右鍵單擊項目 - >添加現有項目 - >導航到cs文件,然後單擊添加按鈕,然後單擊下拉箭頭並單擊選擇「添加爲鏈接」。 –

0

您可以使用MVVM模式在一個程序集中開發您的視圖模型(業務邏輯),然後當您準備好用戶界面時,可以創建WP7項目並在該項目內創建視圖,引用視圖模型在第一個項目中。

這將允許您先單元測試並開發所有邏輯,然後創建視圖並將其綁定到相應視圖模型的相應屬性。

MVVM被設計成能夠像這樣開發,所以它工作得很好恕我直言。

相關問題