2016-05-16 42 views
4

我剛剛繼承了舊的Xamarin Forms應用程序,我試圖升級所有程序包。應用程序最初運行良好,但由於升級到所有軟件包的最新版本,我現在得到一個崩潰調用Xamarin.Forms.Forms.Init(this, bundle);無法從程序集'Xamarin.Forms.Core'加載類型'Xamarin.Forms.Preserve屬性'

Could not load type 'Xamarin.Forms.PreserveAttribute' from assembly 'Xamarin.Forms.Core, Version=2.0.0.0, Culture=neutral, PublicKeyToken=null'. 

這是我的packages.config文件內容:

<?xml version="1.0" encoding="utf-8"?> 
<packages> 
    <package id="ExifLib.PCL" version="1.0.1" targetFramework="MonoAndroid50" /> 
    <package id="Microsoft.Bcl" version="1.1.10" targetFramework="MonoAndroid50" /> 
    <package id="Microsoft.Bcl.Build" version="1.0.21" targetFramework="MonoAndroid50" /> 
    <package id="Microsoft.Net.Http" version="2.2.29" targetFramework="MonoAndroid50" /> 
    <package id="Newtonsoft.Json" version="8.0.3" targetFramework="MonoAndroid50" /> 
    <package id="Xamarin.Android.Support.Animated.Vector.Drawable" version="23.3.0" targetFramework="MonoAndroid50" /> 
    <package id="Xamarin.Android.Support.Design" version="23.3.0" targetFramework="MonoAndroid50" /> 
    <package id="Xamarin.Android.Support.v4" version="23.3.0" targetFramework="MonoAndroid50" /> 
    <package id="Xamarin.Android.Support.v7.AppCompat" version="23.3.0" targetFramework="MonoAndroid50" /> 
    <package id="Xamarin.Android.Support.v7.CardView" version="23.3.0" targetFramework="MonoAndroid50" /> 
    <package id="Xamarin.Android.Support.v7.MediaRouter" version="23.3.0" targetFramework="MonoAndroid50" /> 
    <package id="Xamarin.Android.Support.v7.RecyclerView" version="23.3.0" targetFramework="MonoAndroid50" /> 
    <package id="Xamarin.Android.Support.Vector.Drawable" version="23.3.0" targetFramework="MonoAndroid50" /> 
    <package id="Xamarin.Forms" version="2.3.0.38-pre2" targetFramework="MonoAndroid50" /> 
    <package id="Xamarin.Forms.Labs" version="1.2.1-pre2" targetFramework="MonoAndroid44" /> 
    <package id="Xamarin.Forms.Maps" version="2.2.0.31" targetFramework="MonoAndroid50" /> 
    <package id="Xamarin.GooglePlayServices.Base" version="29.0.0.1" targetFramework="MonoAndroid50" /> 
    <package id="Xamarin.GooglePlayServices.Basement" version="29.0.0.1" targetFramework="MonoAndroid50" /> 
    <package id="Xamarin.GooglePlayServices.Maps" version="29.0.0.1" targetFramework="MonoAndroid50" /> 
    <package id="Xamarin.Insights" version="1.12.3" targetFramework="MonoAndroid50" /> 
</packages> 
+3

我看到你正在嘗試使用Forms 2.3.0.38-pre2 packkage。確保您還將Forms.Maps包更新爲相應的預先版本! –

回答

3

我關閉Xamarin Studio並清除obj和bin文件夾,並再次啓動Xamarin Studio,並且一切正常。

+1

這是許多錯誤的解決方案。我們應該在我們知道該解決方案之前工作的任何時候嘗試。因爲它不應該突然失敗 – IgniteCoders

1

我有同樣的問題,但我注意到Xamarin.Forms包有一個更新。我更新了這個軟件包,問題就消失了。

0

項目的路徑必須沒有「#」字符

1

我從一個剛創建的默認Xamarin窗體應用程序(本機,採用便攜式類庫)添加一個新的表格到PCL後,相同的消息(通過Visual Studio中的「添加新項目」上下文菜單並選擇Xamarin.Forms/Content Page)。

原來,PCL中的packages.config爲Xamarin.Forms指定了不同於UWP project.json文件中的版本。

通過編輯packages.config使這兩個項目使用相同版本的Xamarin.Forms修復了這個問題。

相關問題