【问题标题】:Object reference not set to instance of an object, While using Url.Action() method对象引用未设置为对象实例,使用 Url.Action() 方法时
【发布时间】:2017-06-09 11:01:45
【问题描述】:

我收到错误:在我的 Controller 类方法的这行代码中,对象引用未设置为对象的实例:

var ChangeEmailUrl = Url.Action("ChangeEmailConfirmation", "ManageAccount");

我的目标是在控制器“ManageAccount”中获取操作“ChangeEmailConfirmation”的 URL 路径。 Url.Action() 方法返回的字符串链接将通过电子邮件发送。

另外,我想知道是否有任何其他方式来获取 URL 链接。任何有关解决此问题的信息将不胜感激。

【问题讨论】:

    标签: c# asp.net-mvc


    【解决方案1】:

    如果你想获得一个绝对网址 (http://localhost:8385/MyController/DoThis):

      var ChangeEmailUrl = Url.Action("DoThis", "MyController",null,Request.Url.Scheme,null)
    

    See also

    【讨论】:

      【解决方案2】:

      你可以试试 urlhelper 或者 htmlhelper

      网址助手:

      包含在应用程序中为 ASP.NET MVC 构建 URL 的方法。

      官方文档:https://msdn.microsoft.com/en-us/library/system.web.mvc.urlhelper(v=vs.118).aspx

      HtmlHelper.GenerateLink 方法:

      生成链接到动作方法的 HTML 锚元素(一个元素)

      https://msdn.microsoft.com/en-us/library/system.web.mvc.htmlhelper.generatelink(v=vs.118).aspx

      例子:

      https://stackoverflow.com/a/700357/3397630

      希望有用

      谢谢

      卡提克

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-03-20
        相关资源
        最近更新 更多