加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

如何在Asp.Net MVC 2中通过JQuery调用重载的C#函数

发布时间:2020-12-16 07:11:48 所属栏目:asp.Net 来源:网络整理
导读:我通过 jquery post方法调用重载的C#函数时遇到问题. 我在c#中有两个函数 string func(string a)string func(string a,string b) 现在当我调用jquery中有一个参数的函数时,就像这样 var url = '%= Url.Action("func","Team") %'; $.post(url,{ a: "test" },f
我通过 jquery post方法调用重载的C#函数时遇到问题.

我在c#中有两个函数

string func(string a)
string func(string a,string b)

现在当我调用jquery中有一个参数的函数时,就像这样

var url = '<%= Url.Action("func","Team") %>';                
$.post(url,{ a: "test" },function (data) {
});

它给了我这个错误

The current request for action 'func' on controller type 'TeamController' is 
ambiguous between the following action methods

我想知道如何调用这些重载函数.
我用C#使用Asp.Net MVC 2

解决方法

ASP.NET MVC通常不允许动作重载.如果你想根据你发送给服务器的内容做不同的事情,那么你应该考虑在两个具有不同名称的功能之间分别处理(显然不同的动作名称和不同的URL).如果你想在代码中保持重载,那么你仍然应该用[ActionName(“%some_name_here%”)]属性来装饰这些函数,为它们赋予不同的名称.

如果要保留单个操作名称,则创建一个带有两个参数a和b的“前端”操作,并在操作代码中检查b == null.如果b为null,则调用func(a)重载,否则调用func(a,b).

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读