数据访问库和 xamarin 模型之间发生隐式转换错误 类
Implicit casting error occurs between data access library and xamarin models classes
我正在为 Android 开发一个 Xamarin.Forms 应用程序,它在 google-firebase 中存储数据。
我有一个用于数据访问的 dotNet 标准库和一个 XamarinForms 共享库。
我在两个库中都实现了模型,数据访问模型负责从google-firebase上传和下载数据,共享库模型负责数据绑定。
当我通过数据访问模型获取数据时,我无法将它们放入共享库模型中以绑定到 UI。它显示错误 Cannot implicitly convert type 'DataAccess.Models.Child' to 'VaxinApp.Models.Child' - CS0029
备注
我知道为什么会发生错误,但不知道如何处理。我使用了显式转换,但没有帮助。
更新
在实施访问层时,我可能会违反 SOLID
、DRY
等设计模式或原则。
由于 Wendy 的评论,我们不能转换引用类型,但我们可以使用模型中的方法或一个一个地处理它的属性,就像下面的代码片段一样。
var area = await firebaseHelper.GetArea();
Area = new AreaModel
{
ClusterName = area.ClusterName,
CHWName = area.CHWName,
SocialMobilizerId = area.SocialMobilizerId,
TeamNo = area.TeamNo
};
看,我已经通过添加另一个 Class 的属性来初始化 class。
我正在为 Android 开发一个 Xamarin.Forms 应用程序,它在 google-firebase 中存储数据。
我有一个用于数据访问的 dotNet 标准库和一个 XamarinForms 共享库。
我在两个库中都实现了模型,数据访问模型负责从google-firebase上传和下载数据,共享库模型负责数据绑定。
当我通过数据访问模型获取数据时,我无法将它们放入共享库模型中以绑定到 UI。它显示错误 Cannot implicitly convert type 'DataAccess.Models.Child' to 'VaxinApp.Models.Child' - CS0029
备注
我知道为什么会发生错误,但不知道如何处理。我使用了显式转换,但没有帮助。
更新
在实施访问层时,我可能会违反 SOLID
、DRY
等设计模式或原则。
由于 Wendy 的评论,我们不能转换引用类型,但我们可以使用模型中的方法或一个一个地处理它的属性,就像下面的代码片段一样。
var area = await firebaseHelper.GetArea();
Area = new AreaModel
{
ClusterName = area.ClusterName,
CHWName = area.CHWName,
SocialMobilizerId = area.SocialMobilizerId,
TeamNo = area.TeamNo
};
看,我已经通过添加另一个 Class 的属性来初始化 class。