我开始使用Xamarin的新版本,因为2017年的生产似乎更加稳定,但是我面临着一个理解我在共享库中调用我的Web客户端的问题。
我想在标准表单主详细信息应用程序模板中引用,但是当我右键单击我的表单应用程序时,没有添加引用,所以我的问题是如何在我的Xamarin表单应用程序中引用FuelWc类。
这是我上面的项目
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netcoreapp2.0</TargetFramework>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Newtonsoft.Json" Version="11.0.2" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\FuelCallLogDLCore\FuelCallLogDLCore.csproj" />
</ItemGroup>
</Project>
此代码是属于Xamarin表单的主要应用程序的代码,其中包含视图等。
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netcoreapp2.0</TargetFramework>
</PropertyGroup>
<ItemGroup>
<None Remove="appsettings.json" />
</ItemGroup>
<ItemGroup>
<Content Include="appsettings.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
</ItemGroup>
<ItemGroup>
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="2.0.2" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="2.0.2" />
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="2.0.2" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="2.0.2" />
<PackageReference Include="Microsoft.Extensions.Configuration.Json" Version="2.0.1" />
</ItemGroup>
<ItemGroup>
<DotNetCliToolReference Include="Microsoft.EntityFrameworkCore.Tools.DotNet" Version="2.0.2" />
</ItemGroup>
<ItemGroup>
<Reference Include="System">
<HintPath>System</HintPath>
</Reference>
</ItemGroup>
</Project>
所以我的主要问题是:我如何引用共享库中的代码?
通常我会添加引用,然后使用标准
启动对象Test1 _test = new Test1();
但是因为我似乎无法参考dll,所以我不知所措。
答案 0 :(得分:1)
有三种替代方法可以在它们之间共享代码 跨平台应用程序:
共享项目 - 使用共享资产项目类型来整理您的 源代码,并根据需要使用#if编译器指令进行管理 特定于平台的要求。
便携式类库 - 创建一个 针对您希望的平台的可移植类库(PCL) 支持,并使用Interfaces提供特定于平台的功能 功能。
.NET标准库 - .NET标准项目有效 与PCL类似,需要使用接口进行注入 特定于平台的功能。
我强烈建议您熟悉这些方法之间的差异,这样您就可以自己决定哪些方法适用于您的特定情况。