Migrate Xamarin Components
Posted on
New release of Visual Studio 4 Mac 7.4 on March 2018 has introduced new changes on C# editing which bring the significant improvement on typing responsiveness but forces old Xamarin projects to remove the Xamarin Components.
The message:
“We’ve detected that your solution is currently using Xamarin Components, which is no longer supported. Please remove the used Components manually and reopen the solution.”
We can Fix it by removing the Xamarin Component and replaced by the Nuget package or another library/DLL
Remove the Component
VS4Mac 7.4 removes the Components section of the Solution Pad so we have to work manually with the .csproj file to remove the Component, for example, CorePlot Component
- Open your .csproj file with an XML editor (Visual Studio Code/ Atom,…), find the section `XamarinComponentReference`, under a parent XML node called `ItemGroup`, remove this entire node from the file
- Still, inside .csproj file, find the reference to the DLL and delete it by searching for the component name, for example: “CorePlot”, should found a node
<Reference Include="CorePlotiOS">
,simply delete entire node
- Now back to VS4Mac and reopen your solution
Adding the library back:
- If you could find the appropriate NuGet package for that, would be great!
- Or look for another alternate library, in my case, considering OxyPlot
- Create your owned package if the library is a binding to a native (ObjC/Java) library
- Or keeping the DLL from Components folder and add the reference to it (not recommended)