Asp.net mvc 未调用MVC控制器FileContentResult方法

Asp.net mvc 未调用MVC控制器FileContentResult方法,asp.net-mvc,filecontentresult,Asp.net Mvc,Filecontentresult,我的测试设置由一个视图组成,该视图带有一个foreach,该foreach在一个简单的模型上迭代,目的是为模型集合中的每个项目呈现一个图像。循环中有两个@Url.Action helpers,它们调用控制器中的FileContentResult方法,除了一个从视图中获取参数,另一个硬编码了参数变量外,它们是相同的 @foreach (var i in Model.FeaturedItems) { <img src="@Url.Action("GetFooImage", "Home", ne

我的测试设置由一个视图组成,该视图带有一个foreach,该foreach在一个简单的模型上迭代,目的是为模型集合中的每个项目呈现一个图像。循环中有两个@Url.Action helpers,它们调用控制器中的FileContentResult方法,除了一个从视图中获取参数,另一个硬编码了参数变量外,它们是相同的

@foreach (var i in Model.FeaturedItems)
{
<img src="@Url.Action("GetFooImage", "Home", new {})" alt="@i.Name" />
<img src="@Url.Action("GetFoobarImage", "Home", new {i.ItemID, Entity="item", Size="m"})" alt="@i.Name" />
}
GetFooImage()返回一个图像。FileContentResult GetFoobarImage()不支持


神秘之处在于:如果我在GetFoobarImage上设置断点,它甚至不会被命中。我不明白为什么会调用GetFooImage,但GetFoobarImage不会被调用。

再次检查Url。操作

@Action(“GetFoobarImage”,“Home”,新的{i.ItemID,Entity=“item”,Size=“m”})”

您在通话中丢失的“id=”。应该是

@Url.Action("GetFoobarImage", "Home", new {id = i.ItemID, Entity="item", Size="m"})

还要仔细检查您的签名。Url中的实体存在问题。操作与方法声明中的实体匹配。不确定这是否是您的示例中的键入错误。

仔细检查Url。操作

@Action(“GetFoobarImage”,“Home”,新的{i.ItemID,Entity=“item”,Size=“m”})”

您在通话中丢失的“id=”。应该是

@Url.Action("GetFoobarImage", "Home", new {id = i.ItemID, Entity="item", Size="m"})

还要仔细检查你的签名。Url中的实体存在问题。操作与方法声明中的实体匹配。不确定这在您的示例中是否是一个输入错误。

很好!是身份证的问题。ID=i.ItemID修复了它。缺少匿名类型投影初始值设定项。很好!是身份证的问题。ID=i.ItemID修复了它。缺少匿名类型投影初始值设定项。