标签: actionresult

在MVC中,如何返回字符串结果?

在我的AJAX调用中,我想将一个字符串值返回给调用页面.

我应该使用ActionResult还是只返回一个字符串?

ajax asp.net-mvc actionresult

610
推荐指数
4
解决办法
27万
查看次数

ASP.NET MVC控制器方法必须返回ActionResult吗?

作为ASP.NET MVC的新手,我一直想知道Controller方法的签名.在我看过的所有示例中,它们似乎总是返回ActionResult,即使它们实际返回ViewResult实例或类似实例.

这是一个常见的例子:

public ActionResult Index()
{
    return this.View();
}
Run Code Online (Sandbox Code Playgroud)

在这种情况下,将方法声明为public ViewResult Index()并获得更强的类型支持是不是更有意义?

实验表明这是有效的,所以似乎有可能.

我确实意识到可能存在需要多态的情况(例如,如果你只想在某些情况下重定向,但在其他情况下显示视图),但如果方法总是返回一个视图,我会发现更多的ViewResult可取的.

就未来的兼容性而言,ActionResult显然提供了更强大的签名,但如果有人控制整个代码库,则总是可以将方法的签名更改为更通用的返回类型(如果将来需要它).

是否有其他我不了解的注意事项,或者我应该继续并使用特定的返回类型声明我的控制器方法?

polymorphism asp.net-mvc actionresult viewresult

57
推荐指数
4
解决办法
3万
查看次数

如何在MVC中将XML字符串作为操作结果返回

可能重复:
从ASP.NET MVC中的控制器操作返回XML的最佳方法是什么?

我能够将JSON和部分视图(html)作为有效的ActionResult返回,但是如何返回XML字符串?

.net xml asp.net-mvc actionresult

55
推荐指数
2
解决办法
5万
查看次数

在ASP.Net MVC中禁用每个请求的会话状态

我在ASP.Net MVC中创建一个ActionResult来提供图像.启用会话状态后,IIS将一次只处理来自同一用户的一个请求.(这不仅适用于MVC.)

因此,在具有多个图像回调此Action的页面上,一次只能处理一个图像请求.这是同步的.

我希望这个图像Action是异步的 - 我希望每次执行多个图像请求而不需要前一个完成.(如果图像只是静态文件,IIS会以这种方式为它们提供服务.)

所以,我想禁用Session仅用于对该Action的调用,或者指定某些请求没有Session状态.任何人都知道如何在MVC中完成这项工作?谢谢!

asp.net asp.net-mvc asynchronous session-state actionresult

46
推荐指数
5
解决办法
3万
查看次数

如何从另一个目录中提供html文件作为ActionResult

我有一个专门的案例,我希望从Controller Action提供一个直接的html文件.

我想从Views文件夹以外的其他文件夹中提供它.该文件位于

Solution\Html\index.htm
Run Code Online (Sandbox Code Playgroud)

我想从标准的控制器动作中提供服务.我可以使用返回文件吗?我该怎么做?

html asp.net-mvc actionresult controller-action

36
推荐指数
3
解决办法
4万
查看次数

使用actionResult返回错误消息

MVC App,客户端向服务器发出请求,发生错误,要将msg发送回客户端.尝试了HttpStatusCodeResult,但只返回404没有消息,我需要将错误的详细信息发送回客户端.

public ActionResult GetPLUAndDeptInfo(string authCode)
{
    try
    {
        //code everything works fine
    }
    catch (Exception ex)
    {
         Console.WriteLine(ex.Message);
         return new HttpStatusCodeResult(404, "Error in cloud - GetPLUInfo" + ex.Message);
    }
}
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc actionresult asp.net-mvc-3

30
推荐指数
4
解决办法
9万
查看次数

返回空ActionResult

当我需要返回错误的请求结果时,我可能会遇到情况.

例如,调用MVC 3站点的控制器操作,但请求uri中缺少必需的参数.

我回复了什么?我知道我可以这样做:

Response.StatusCode = (int)HttpStatusCode.BadRequest;
return Content(string.Empty);
Run Code Online (Sandbox Code Playgroud)

这是上述情况的正确方法吗?

asp.net-mvc bad-request actionresult

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

建议使用文件扩展名创建ActionResult的方法

我需要在ASP.NET MVC应用程序中创建一个具有.csv文件类型的ActionResult.

我将向我的营销合作伙伴提供"不要打电话"的电子邮件列表,我希望它在文件类型中具有.csv扩展名.然后它将自动在Excel中打开.

 http://www.example.com/mailinglist/donotemaillist.csv?password=12334
Run Code Online (Sandbox Code Playgroud)

我已成功完成以下操作,但我想确保这是绝对最佳和推荐的方法.

    [ActionName("DoNotEmailList.csv")]
    public ContentResult DoNotEmailList(string username, string password)
    {
            return new ContentResult()
            {
                Content = Emails.Aggregate((a,b)=>a+Environment.NewLine + b), 
                ContentType = "text/csv"
            };
    }
Run Code Online (Sandbox Code Playgroud)

这个Actionmethod会响应上面的链接就好了.

我只是想知道是否有任何意外冲突的任何不同版本的IIS,任何类型的ISAPI过滤器,或任何我现在无法想到的文件扩展名.

我需要100%肯定,因为我会向外部合作伙伴提供这个,并且不想在以后改变主意.我真的看不出任何问题,但也许有些东西模糊不清 - 或者更像"MVC"这样做的方式.

asp.net-mvc actionresult

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

ASP.NET MVC的所有可用ActionResults是什么?

到目前为止,在ASP.NET MVC中返回ActionResult的所有方法是什么(即RedirectToAction等)

我还没有找到一个很好的文档资源来列出这种东西.

asp.net-mvc actionresult

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

返回new RedirectResult()vs return Redirect()

以下两个控制器ActionResult返回语句之间有什么区别:

return new RedirectResult("http://www.google.com", false);
Run Code Online (Sandbox Code Playgroud)

return Redirect("http://www.google.com");
Run Code Online (Sandbox Code Playgroud)

asp.net asp.net-mvc redirect actionresult asp.net-mvc-3

19
推荐指数
2
解决办法
3万
查看次数