gpt4 book ai didi

c# - 传入字典的模型项是 'System.Tuple` 类型的?

转载 作者:太空狗 更新时间:2023-10-30 00:53:24 26 4
gpt4 key购买 nike

在我看来,这里正在实现使用两个模型的 Tuple。但是出现以下错误

The model item passed into the dictionary is of type 
'System.Tuple`2[System.Collections.Generic.List`1[MvcApplication1.Models.EventRepository],System.Collections.Generic.List`1[MvcApplication1.Models.SlideShow]]',
but this dictionary requires a model item of type
'System.Tuple`2[System.Collections.Generic.IEnumerable`1[MvcApplication1.Models.EventRepository],System.Collections.Generic.IEnumerable`1[MvcApplication1.Models.SlideShow]]'.

这是我的 View :

@model Tuple<IEnumerable<MvcApplication1.Models.EventRepository>, IEnumerable<MvcApplication1.Models.SlideShow>>
ViewBag.Title = "Home Page";
}

Controller :

[HttpPost]
public ActionResult Index(string SearchParam)
{
EventRepository objcheckout = new EventRepository();
objcheckout.GetEventDetails(SearchParam);
SlideShow SS = new SlideShow();
SS.GetSlideDetail(SearchParam);
return View(Tuple.Create(objcheckout.GetEventDetails(SearchParam), SS.GetSlideDetail(SearchParam)));
}

有什么建议吗?

编辑:这里在我的 View 中调用两个部分 View 并收到此错误

 The model item passed into the dictionary is of type 
'System.Tuple`2[System.Collections.Generic.List`1[MvcApplication1.Models.EventRepository],System.Collections.Generic.List`1[MvcApplication1.Models.SlideShow]]',
but this dictionary requires a model item of type
'System.Collections.Generic.List`1[MvcApplication1.Models.EventRepository]'.

这是我的观点

  @model Tuple<IEnumerable<MvcApplication1.Models.EventRepository>, IEnumerable<MvcApplication1.Models.SlideShow>>
@Html.Partial("EventDetails")
@Html.Partial("SlideShow")

局部 View 1

@model List<MvcApplication1.Models.EventRepository>

局部 View 2

@model List<MvcApplication1.Models.SlideShow>

答案:我已经回答了这个问题(编辑)

最佳答案

改变:

@model Tuple<IEnumerable<MvcApplication1.Models.EventRepository>, IEnumerable<MvcApplication1.Models.SlideShow>>
ViewBag.Title = "Home Page";
}

@model Tuple<List<MvcApplication1.Models.EventRepository>, IEnumerable<MvcApplication1.Models.SlideShow>>
ViewBag.Title = "Home Page";
}

您将模型定义为 IEnumerable,但您在 Controll Action (Index) 的 return 语句中向下传递了一个 List。如果您不想在您的 View 中修改集合,您还可以选择传递 IEnumerable

关于c# - 传入字典的模型项是 'System.Tuple` 类型的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16540033/

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