我不明白如何解决这个问题。我将需要你的帮助和解释如何解决它。 我使用WebService来填充具有艺术家姓名的DropDownList 这是代码behing。
private List<ArtistServiceReference.ArtistServiceClient> ArtistDetail()
{
ArtistServiceReference.ArtistServiceClient client =
new ArtistServiceReference.ArtistServiceClient();
ArtistServiceReference.Artist[] artists = client.ArtistDetail();
return artists.ToList(); <=== errror here
无法隐式将System.Collections.Generic.List<ArtistServiceReference.Artist>
类型转换为System.Collections.Generic.List<ArtistServiceReference.ArtistServiceClient>
这是ArtistService.cs
public class ArtistService : IArtistService
{
public List<Artist> ArtistDetail()
{
using (ArtistDataContext db = new ArtistDataContext())
{
return (from artist in db.Artists
select new Artist()
{
Id = artist.Id,
Artist_nom = artist.Artist_nom
}).ToList();
}
}
}
答案 0 :(得分:1)
如果您希望客户端方法返回Artist
的列表,为什么要将其声明为返回ArtistClient
的列表?
以下内容应解决您的问题:
private List<ArtistServiceReference.Artist> ArtistDetail()
{
...
return artists.ToList();
}
或者,更优雅:
using YourNamespace.ArtistServiceReference;
private List<Artist> ArtistDetail()
{
...
return artists.ToList();
}
答案 1 :(得分:1)
您的方法的返回类型应该是ArtistServiceReference.Artist的列表,而不是ArtistServiceReference.ArtistServiceClient的列表。您想使用ArtistServiceClient返回艺术家列表,而不是返回客户列表。
private List<ArtistServiceReference.Artist> ArtistDetail()
{
ArtistServiceReference.ArtistServiceClient client =
new ArtistServiceReference.ArtistServiceClient();
var artists = client.ArtistDetail();
return artists.ToList();
}
答案 2 :(得分:0)
这是解决方案:
代码behind.cs
private List<ArtistServiceReference.Artist> ArtistDetail()
{
ArtistServiceReference.ArtistServiceClient client = new
ArtistServiceReference.ArtistServiceClient();
ArtistServiceReference.Voiture[] artists = client.ArtistDetail();
return artists.ToList();
}
ArtistService.cs
public class ArtistService : IArtistService
{
public List<Artist> ArtistDetail()
{
using (ArtistDataContext db = new ArtistDataContext())
{
return db.Artists.ToList();
}
}
}