【发布时间】:2014-11-06 06:22:14
【问题描述】:
我正在编写 C# Xamarin 应用程序,并收到以下错误:
Error CS0029: Cannot implicitly convert type 'System.Collections.Generic.List<SimpleMapDemo.AndroidMapLocationImageViewModel>' to 'System.Collections.Generic.List<SimpleMapDemo.AndroidIGridViewItemWithAssets>'
我在这一行收到错误:
return androidMapLocationImageGalleryViewModel.images;
在以下函数中:
public List<AndroidIGridViewItemWithAssets> GetAndroidMapLocationItemGridViewItemsFromWebService(string type, int webServiceId)
{
if (type.Equals("Image Gallery"))
{
AndroidMapLocationImageGalleryViewModel androidMapLocationImageGalleryViewModel = GetAndroidMapLocationImageGallery (webServiceId);
return androidMapLocationImageGalleryViewModel.images;
}
return null;
}
这是我的AndroidMapLocationImageGalleryViewModel 代码:
public class AndroidMapLocationImageGalleryViewModel
{
public int mapLocationItemImageGalleryId { get; set; } //may not be needed
public List<AndroidMapLocationImageViewModel> images;
public AndroidMapLocationImageGalleryViewModel ()
{
images = new List<AndroidMapLocationImageViewModel> ();
}
}
AndroidMapLocationImageViewModel 继承自 AndroidIGridViewItemWithAssets。
我可以就这段代码寻求帮助吗?
提前致谢
【问题讨论】:
-
类不是协变的,只有接口。
-
这是一个重复的,现在正在寻找一个好的候选参考。
-
可以有其他更好的重复,但有点难找,太笼统的搜索词。
标签: c# list interface return typeconverter