C# 视图正在向控制器发送空值
我有一个视图文件,试图从中向控制器文件发送url 我的视图文件如下所示:C# 视图正在向控制器发送空值,c#,asp.net-mvc,url,razor,model-view-controller,C#,Asp.net Mvc,Url,Razor,Model View Controller,我有一个视图文件,试图从中向控制器文件发送url 我的视图文件如下所示: @model WebRole1.Models.CodeSnippet @{ ViewBag.Title = "Details"; } <p> @Html.ActionLink("Preview", "Preview", new { Model.URL }) | </p> 但是,由于某些原因,视图正在向控制器发送空值。i、 e.当调用控制器的预览方法时,zipPa
@model WebRole1.Models.CodeSnippet
@{
ViewBag.Title = "Details";
}
<p>
@Html.ActionLink("Preview", "Preview", new { Model.URL }) |
</p>
但是,由于某些原因,视图正在向控制器发送空值。i、 e.当调用控制器的预览方法时,zipPath
值保持为空。有什么问题吗?您的操作方法正在等待名为zipPath
的属性。但是,由于您没有为匿名对象中的属性提供名称,因此默认情况下它将是URL
因此,将代码更改为:
@Html.ActionLink("Preview", "Preview", new { zipPath = Model.URL })
其他信息:
如果您已将zipPath
作为URL段包含在路由中,则该值将由路由段分配给该段。否则,我们提供的值将作为查询字符串的一部分添加。您的操作方法正在等待名为zipPath
的属性。但是,由于您没有为匿名对象中的属性提供名称,因此默认情况下它将是URL
因此,将代码更改为:
@Html.ActionLink("Preview", "Preview", new { zipPath = Model.URL })
其他信息:
如果您已将
zipPath
作为URL段包含在路由中,则该值将由路由段分配给该段。否则,我们提供的值将被添加为查询字符串的一部分。您在哪里设置URL?请将您的真实代码发布到控制器文件中,然后我将使用URL执行一些操作。您正在这里构造一个对象:新建{Model.URL}
。默认情况下,由于不提供属性名称,因此它将是URL
。方法上的参数名为zipPath
,而不是URL
,因此不匹配。请尝试new{zipPath=Model.URL}
在哪里设置URL?请将您的真实代码发布到控制器文件,然后我将使用URL执行一些操作。您正在这里构建一个对象:new{Model.URL}
。默认情况下,由于不提供属性名称,因此它将是URL
。方法上的参数名为zipPath
,而不是URL
,因此不匹配。请尝试new{zipPath=Model.URL}
@rampuriyaaa乐于帮助。祝你好运。@Rampuriyaa很高兴能帮忙。祝你好运