gpt4 book ai didi

c# - 如何使用 asp.net mvc 和 razor 模板引擎从 c# 中的路由名称获取 URL?

转载 作者:太空狗 更新时间:2023-10-30 01:33:02 31 4
gpt4 key购买 nike

我正在尝试获取 Razor 模板内已知路由名称的 url。

这是我的部分观点

@model ScripterEngine.ViewModels.CampaignViewModel

<script type="text/javascript">

function logTime(stage, status, async){

var target = "@UrlHelper.RouteUrl("timetracker.clockin")";

var postData =
{
'campaign_id': @Model.id,
'agent_id': is_system_agentid.value,
'log_id': is_attr_calldata.tracker_id,
'stage_name': stage
};

if( status == 'out'){
target = "@UrlHelper.RouteUrl("timetracker.clockout")";
}

if( async !== false){
async = true;
}

$.ajax({
type: 'POST',
url: target,
data: postData,
async: async,
dataType: "json",
error: function( jqXHR, textStatus, errorThrown ){

alert('clock ' + status + ' failed!' + jqXHR.status );
},
success: function(data){

if(data && data.id && status != 'out'){
is_attr_calldata.tracker_id = data.id;
}

}
});
}

</script>

这是我的路线图

        //Timetracker - ClockIn
routes.MapRoute(
"timetracker.clockin",
"timetracker/clockin",
new { controller = "TimeTracker", action = "ClockIn" }
);

//Timetracker - ClockOut
routes.MapRoute(
"timetracker.clockout",
"timetracker/clockout",
new { controller = "TimeTracker", action = "ClockOut" }
);

但是,在启动程序并导航到路由后出现编译错误。

Compilation Error Description: An error occurred during the compilation of a resource required to service this request. Please review the following specific error details and modify your source code appropriately.

Compiler Error Message: CS0120: An object reference is required for the non-static field, method, or property 'System.Web.Mvc.UrlHelper.RouteUrl(string)'

错误点在此行

var target = "@UrlHelper.RouteUrl("timetracker.clockin")";

如何从给定的路由名称中正确获取 Url?

最佳答案

UrlHelper 在 View 中显示为 @Url - WebViewPage 的代码具有:

public UrlHelper Url { get; set; }

尝试:

var target = '@Url.RouteUrl("timetracker.clockin")';

关于c# - 如何使用 asp.net mvc 和 razor 模板引擎从 c# 中的路由名称获取 URL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35212642/

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