标签: actionlink

OnSuccess如何测量ASP.NET MVC ActionLink?

我并不完全理解ASP.NET ActionLinks的工作原理.我看到他们有OnSuccess和OnFailure的事件处理程序,但我找不到任何描述成功和失败如何确定的东西.

我正在构建一个ASP.NET MVC应用程序,在其中我有一个Ajax.ActionLink,允许我使用AJAX对项目进行"投票"......类似于Digg.Actionlink开始我的控制器和方法......一切都在这里工作正常.

在我的控制器中,我有逻辑检查此用户之前是否已投票.我想用"OnSuccess"和"OnFailure"来回应不同.我希望它运行我的Javascript函数"PlusOneVote",如果用户从未投票(这是OnSuccess场景),如果用户投票之前我想运行我的javascript函数"CheaterYouCantVoteTwice".

有人可以解释一下OnFailure和OnSuccess是如何衡量的吗?

有人可以解释我如何构建这个逻辑...我可以在一个分支中运行一个Javascript函数(在我的情况下,如果用户从未投票)和另一个Javascript函数在用户已经投票的情况下?

asp.net asp.net-mvc actionlink

8
推荐指数
1
解决办法
2802
查看次数

MVC使动作链接执行提交

我目前正在尝试进行html提交,但是使用MVC辅助方法ActionLink,因为我不希望它是一个按钮,我希望它是一个带下划线的链接,就像我页面上的其余部分一样.这就是我目前所拥有的

<%= Html.ActionLink("Delete Selected", "DeleteCheckBox", "Domains", "Default.aspx", new { type="submit" }) %>
Run Code Online (Sandbox Code Playgroud)

这会跳回我的操作,但是所有已检出要删除的域都不会被发回.(如果我使用它,<input type="submit" name="DeleteAction" value="Delete" />它工作正常,所以我知道提交或检索复选框没有问题)

这是我到目前为止所拥有的......

>"%>

指数

<h2>Domain List</h2>

<h2 style="color: #FF0000"><%= Html.Encode(ViewData[IProwlAdminUI.Utils.Global.ExceptionMessageKey]) %></h2>
<h2 style="color: #FF0000"><%= Html.Encode(ViewData["Message"]) %></h2>

<% using (Html.BeginForm("DeleteCheckBox", "Domains"))
   { %>
   <% if (ViewData.ContainsKey("DeleteMessage")) 
       { %>
       <h2 style="color: #FF0000"><%= Html.Encode(ViewData["DeleteMessage"]) %></h2>
       <input type="submit" name="DeleteAction" value="Commit" /> <input type="reset" name="DeleteAction" value="Cancel" /> 
    <% } %>
   <p>
    <%= Html.ActionLink("Create New", "Create") %> 
    | <%= Html.ActionLink("Export List", "Export") %> 
    | **<a href="javascript:void(0)" class="DeleteLink">Delete Selected</a>** …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc actionlink

8
推荐指数
1
解决办法
3万
查看次数

当action等于默认路由值时,MVC ActionLink忽略操作

我为我的应用程序定义了以下路由:

routes.MapRoute(
    "Referral", // Route name
    "{referralCode}", // URL with parameters
    new { controller = "Home", action = "Index" } // Parameter defaults
);

routes.MapRoute(
    "Default", // Route name
    "{controller}/{action}", // URL with parameters
    new { controller = "Home", action = "Index" } // Parameter defaults
);
Run Code Online (Sandbox Code Playgroud)

我正在尝试创建一个ActionLink来继续我的AdminController上的Index操作:

@Html.ActionLink("admin", "Index", "Admin")
Run Code Online (Sandbox Code Playgroud)

但是,执行视图时,ActionLink呈现为(省略了索引操作值):

<a href="/Admin">admin</a>
Run Code Online (Sandbox Code Playgroud)

通常情况下这可以,但它会导致与"推荐"路线发生冲突.

注意:如果我使用ActionLink呈现不同的操作,如"默认",则ActionLink会正确呈现:

<a href="/Admin/Default">admin</a>
Run Code Online (Sandbox Code Playgroud)

"默认"操作正确呈现的事实使我相信问题与为路由指定的默认值有关.无论如何还要强制ActionLink呈现"索引"动作吗?

asp.net-mvc actionlink

8
推荐指数
1
解决办法
2778
查看次数

为什么RouteLink生成友好的URL而ActionLink没有?

我有一个关于RouteLink与ActionLink的问题.

请考虑以下路线

routes.MapRoute("Routename1",
    "{someEnum}/SpecificAction/{id}/{stringId}",
    new { controller = "MyController", id = (int?)null, stringId= (string)null, action = "SpecificAction" },
    new { someEnum= "(EnumVal1|EnumVal2)" }
);
Run Code Online (Sandbox Code Playgroud)

奇怪的{someEnum}部分是因为我对枚举的所有值使用通用控制器,它构成了url的典型控制器部分.例如,/ EnumVal1/Action /和/ EnumVal2/Action /使用相同的控制器.然而,这不是问题的一部分.

考虑以下两种链接方式:

<%=Html.RouteLink("Click me","Routename1", new { id = 32, stringId = "Yatzy" })%> 
<%=Html.ActionLink("Click me", "SpecificAction", "EnumVal1", new { id = 32, stringId = "Yatsy" }, null)%>
Run Code Online (Sandbox Code Playgroud)

RouteLink生成正确的URL,即/ EnumVal1/SpecificAction/32/Yatzy

ActionLink生成一个类似于/ EnumVal1/SpecificAction/32的URL?stringId = Yatzy

为什么是这样?请有人向我解释一下.

c# asp.net-mvc routes actionlink

7
推荐指数
1
解决办法
5250
查看次数

将rel和title添加到ASP.NET MVC Action Links

我主要是出于搜索引擎优化的原因决定将"rel"添加到我的行动链接中,但我不确定我采用的方式是遵循"最佳做法".我只是创建了一个新的Extension方法,如下所示.

这是最好的方法吗?是否有应该在这种方法中修改的东西?

视图

<%= Html.ActionLink("Home", "Index", "Home")
    .AddRel("me")
    .AddTitle("Russell Solberg")
%>
Run Code Online (Sandbox Code Playgroud)

扩展方法

public static string AddRel(this string link, string rel)
{
    var tempLink = link.Insert(link.IndexOf(">"), String.Format(" rel='{0}'", rel));
    return tempLink;
}

public static string AddTitle(this string link, string title)
{
    var tempLink = link.Insert(link.IndexOf(">"), String.Format(" title='{0}'", title));
    return tempLink;
}
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc actionlink canonical-link

7
推荐指数
1
解决办法
7814
查看次数

如何在html动作链接中插入图像?asp.net mvc

我在html操作链接的webproject上有导航和许多链接.它们很难看下划线.我想插入一些带有名字的图像或玩动作风格链接.可能吗?怎么做?

感谢并保重,Ragims

c# asp.net-mvc actionlink

7
推荐指数
1
解决办法
2万
查看次数

ASP MVC 3 RequireHttps属性将所有链接更改为https

我有一个ASP MVC 3网站,它有一个反馈表,应该要求SSL.

现在,我在名为"ContactUs"的控制器中有一个名为Feedback的操作,负责查看和处理反馈.

当我[RequireHttps]在该操作上使用该属性时,它运行良好,并将URL更改为"https".但是,我注意到我页面中的所有链接现在都指向"https"!好像这个属性迫使路由引擎将相同的内容应用到所有链接!

当然,只有这个单一动作才需要SSL,其余所有动作都需要正常的http.

谁能告诉我如何解决这个问题?

asp.net-mvc actionlink hyperlink requirehttps

7
推荐指数
1
解决办法
7271
查看次数

Ajax.ActionLink与Html.ActionLink + Jquery.Ajax调用

我可以通过Ajax.ActionLink("获取客户","GetCustomers","客户")调用asp.net mvc控制器;

我可以使用Html.ActionLink和jquery ajax调用来做同样的事情.

区别在哪里?

ajax asp.net-mvc jquery actionlink

7
推荐指数
1
解决办法
3280
查看次数

创建https actionlink

我在工作asp.net mvc3.我有一个如下的动作链接:

 @Html.ActionLink("Yes", "Admin", "Foo", null, new { @class = "link" })
Run Code Online (Sandbox Code Playgroud)

我如何修改这个以在https中创建一个与http相对的链接,因为我已经使用[RequireHttps]设置了我的控制器操作

c# actionlink asp.net-mvc-3

7
推荐指数
1
解决办法
2073
查看次数

ActionLink MVC中的图像按钮

如何在ActionLink按钮中放置图像而不是文本:

@Html.ActionLink("Edit-link", "Edit", new { id=use.userID })
Run Code Online (Sandbox Code Playgroud)

那么如何将文本"编辑链接"更改为图像?

谢谢你的想法.

asp.net-mvc image actionlink

7
推荐指数
1
解决办法
2万
查看次数