0

任何人都可以提供將VS2010解決方案從RIA Services 1.0 + Silverlight 4升級到RIA Services 1.0 SP2 + Silverlight 5的分步指南?如何從WCF RIA Service 1.0升級到SP2 - Silverlight和Entity Framework

我的解決方案是建立在正常的方式:

  1. MyApp.Web - ASP.NET服務器項目(這裏的實體框架)
  2. MyApp的 - Silverlight客戶端項目(RIA服務 「連接」 這與MyApp.Web)

這是我到目前爲止有:

  1. 卸載WCF RIA服務工具包一個第二WCF RIA服務V1.0爲VS2010
  2. 安裝VS2010 SP1
  3. 安裝實體框架4.1
  4. 安裝Silverlight 5個工具(包含RIA服務1.0 SP2)

這裏就是我丟失。接下來我該做什麼?特別是:

  1. 我需要從我的客戶端和服務器項目中刪除/添加哪些項目引用?
    1. 去從實體框架4.0〜4.1
    2. 從RIA服務1.0去RIA服務1.0 SP2
    3. 從Silverlight的4到5
  2. 別的我失蹤?
  3. 我的解決方案部署到我的生產服務器(運行Win XP)上需要做什麼?
    1. 我記得安裝的.NET Framework 4.0和RIA服務分發(一段時間回來)高級

感謝。

+0

您是否嘗試過打開您的項目?你有錯誤嗎? – Bryant 2012-03-14 20:55:08

+0

構建並運行良好,但我猜測我的項目仍然與EF 4.0和Silverlight 4鏈接。 – sparks 2012-03-14 21:00:23

+0

您的計算機上只能有一個Ria版本,因此如果它已安裝,則會比使用該版本。轉到Silverlight項目的屬性並將其更改爲Silverlight 5(如果更改後版本爲Silverlight 5,則應檢查任何引用的程序集)將其保存。最好在服務器上安裝Ria Services V1.0 SP2。您還應該在服務器上安裝Silverlight 5 Developer Runtime。 – Silvermind 2012-03-14 21:52:01

回答

1

1.1當我開始一個新項目,並添加一個ADO.NET實體數據模型,它會自動添加以下組件:

System.Data.Entity 
System.Runtime.Serialization 
System.Security 

所以我會從項目中刪除,並重新添加它們,以確保公正使用最高版本。

1.2您的機器上只能有一個Ria版本。所以你的項目會自動使用上次安裝的版本。

1.3轉到Silverlight項目的「屬性」頁面,打開「Silverlight」選項卡。將版本更改爲Silverlight 5,版本號爲Target Silverlight版本:重要說明:如果您有大型項目,則需要很長時間才能完成。自己喝點咖啡,等一下。更改UI時可能無法響應,但請勿觸摸它。即使你失去耐心。如果你放棄了,你的.csproject文件中可能會存在一些錯誤。

第一點3:在您的服務器上安裝Silverlight 5工具以及Entity FrameWork 4.1這樣,如果您忘記將Copy Local設置爲True以用於新的Silverlight程序集,則無關緊要。 (這意味着如果您忘記了,則不必再次重新發布。)

第2點:確保您的項目通過檢查/執行以下操作來使用新安裝的版本: - 刪除bin和obj文件夾這兩個項目。
- 刪除Silverlight項目中隱藏的GenerateCode文件夾。
- 確保您自己的引用程序集也是針對Silverlight 5.
- 在完成所有這些操作後,我會做一些看起來很奇怪的事情,但已被證明解決了愚蠢的錯誤:在Silverlight項目的屬性頁中禁用WCF Ria Services link設置爲<No Project Set>構建您的項目(導致很多錯誤,我知道)切換鏈接並重建。請記住,Ria支持SP1以來的複雜對象序列化,他們希望從第一個版本開始,但是無法及時完成。如果您將程序集包含到包含服務器端也存在的對象類型的Silverlight客戶端,這會讓您頭疼。

祝你好運,如果你有任何問題,而不僅僅是問。