gpt4 book ai didi

mysql - Lambda 表达式 - 错误无法将类型 `vicoapi.Pictures' 隐式转换为 `System.Collections.Generic.List' (CS0029)

转载 作者:行者123 更新时间:2023-11-28 23:20:28 24 4
gpt4 key购买 nike

Hello Together 遵循我的代码:

    public class SampleData : DropCreateDatabaseIfModelChanges<VicoTvEntities>
{
protected override void Seed(VicoTvEntities context)
{
var pictures = new List<Pictures>{
new Pictures { Name = "Testbild", Url="localhost/test" }
};
var user = new List<User>{
new User{Username="Muster", Password="Pass",Email="max.muster@mustermail.com",Bio="Musterbiografie", Pictures = pictures.Find(pic => pic.Name == "Testbild")}
};
}
}

我尝试构建一个 API,目前,我致力于将数据库连接到代码。我正在学习本教程:https://www.asp.net/mvc/overview/older-versions/mvc-music-store/mvc-music-store-part-4

我的问题是,每当我尝试添加图片时,它都不会工作,因为这个转换错误。我怎样才能避免这个问题并将图片实现给用户。我的源代码树看起来像这样: Source Tree

用户类如下所示:

public class User
{
public int IdUser { get; set; }
public string Username { get; set; }
public string Password { get; set; }
public string Email { get; set; }
public string Bio { get; set; }
public List<Pictures> Pictures { get; set; }
public List<Follow> Following { get; set; }
public List<Follow> Followed { get; set; }
}

我得到的错误是这样的:

/Users/username/vicotv-Backend/vicoapi/vicoapi/Models/SampleData.cs(126,126): Error CS0029: Cannot implicitly convert type `vicoapi.Pictures'to System.Collections.Generic.List' (CS0029) (vicoapi)

最佳答案

虽然您没有在此处显示该类,但我相当确定您的 User 类具有如下定义的属性:

public List<Pictures> Pictures { get; set; }

如果是这种情况,您需要像这样将属性分配给整个列表:

user.Pictures = pictures

如果您希望一个用户只能拥有一张图片,那么您需要像这样在 User 类上定义 Picture 属性:

public Pictures Picture { get; set; }

如果您像这样定义 Picture 属性,它应该适用于您当前的代码。

附言我肯定会建议将您的“图片”类重命名为“图片”。一般来说,类名应该使用单数形式。看看at this page获取更多信息。

关于mysql - Lambda 表达式 - 错误无法将类型 `vicoapi.Pictures' 隐式转换为 `System.Collections.Generic.List<vicoapi.Pictures>' (CS0029),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41895263/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com