![](/img/trans.png)
[英]Cannot Implicitly convert type 'System.Collections.Generic.list<fooClass>' to 'System.Collections.Generic.List<T>
[英]Cannot implicitly convert type 'System.Collections.Generic.List<x>' to 'System.Collections.Generic.List<y>'
当我尝试从 Model 获取方法时,我在 View_Model 层中使用了数据注释,并且在 Model 层中有我的实体我得到了这个错误
无法将类型“System.Collections.Generic.List<DigikalaHR.Models.EF_Model.Member>”隐式转换为“System.Collections.Generic.List<DigikalaHR.View_Model.Entitys.Member>”
这是我的 View_Model 层中发生错误的代码
public Models.CRUD.Member Ref_CRUD { get; set; }
public List<View_model.Entitys.Member> GetALLMembers()
{
Ref_CRUD = new Models.CRUD.Member();
return (Ref_CRUD.Get_AllMemeberRecords());
}
这是我连接到我的数据库的 Model 层中的代码
public List<EF_Model.Member> Get_AllMemeberRecords()
{
using (var context = new EF_Model.DigikalaHREntities())
{
var member = context.Members.OrderBy(i => i.Id).Select(i => i);
return member.ToList();
}
}
唯一的例外是说代码上的错误所在。 您为什么不这样做?:
public Models.CRUD.Member Ref_CRUD { get; set; }
public List<EF_Model.Member> GetALLMembers()
{
Ref_CRUD = new Models.CRUD.Member();
return (Ref_CRUD.Get_AllMemeberRecords());
}
您也应该使用此代码,尽管您也更改了模型
public IEnumerable<Entitys.Member> GetALLMembers()
{
IEnumerable<Models.EF_Model.Member> list = new Models.CRUD.Member().Get_AllMemeberRecords();
List<Entitys.Member> listProduct = new List<Entitys.Member>();
foreach (var item in list)
{
listProduct.Add(new Entitys.Member() { FirstName = item.FirstName,.....});
}
return listProduct;
}
尽管您必须根据您的实体要求更新您的 model,但您应该使用以下代码:
公共 IEnumerable<Entity.Member> GetALLMembers()
{
IEnumerable<Models.EF_Model.Member> _cTRAlternativeSolutions= new Models.CRUD.Member().Get_AllMemeberRecords();
List<Entity.Member> CTRAlternativeSolutionFormModels= new List<Entity.Member>();
foreach(_cTRAlternativeSolutions 中的变量项)
{
CTRAlternativeSolutionFormModels.Add(new CTRAlternativeSolutionFormModel() { SolutionId = item.SolutionId, CTRId = item.CTRId, SerialNumber = item.SerialNumber, SolutionTitle = item.SolutionTitle, Remarks = item.Remarks});
}
返回 CTRAlternativeSolutionFormModels;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.