c# - 如何将复杂类型转换为 actionresult

标签 c# asp.net-mvc entity-framework edmx

我是 MVC 的新手,正在尝试从 Controller 调用存储过程。

在模型中,我有 edmx,它将所有存储过程作为函数

Cannot implicitly convert type System.Collections.Generic.IEnumerable<MVC.Models.xxcomplextype_result> to System.Web.Mvc.ActionResult
An explicit conversion exists.

我在 Controller 中为实体创建了一个对象,并在一个操作结果函数中调用了调用存储过程的函数,它返回了上述错误。 如何将结果集转换为actionresult?

代码示例

public class DBController : Controller
{
    XXXXXXXEntities xXXXXXEntities = new XXXXXXXEntities();

    public IEnumerable<usp_xxxxx_Result> usp_xxxxx()
    {
        return XXXXXEntities.usp_xxxxx();
    }
}

public ActionResult ViewQuery() {
    DBController dBController = new DBController();

    return dBController.usp_xxxxx();
}

最佳答案

您需要返回一个继承自 ActionResult 的类。

可能你想要这样的东西:

public ActionResult ViewQuery() {
        DBController dBController = new DBController();
        return View(dBController.usp_xxxxx());
}

这将返回 View ,并将结果作为模型传入。

如果你想返回 JSON 使用:

public ActionResult ViewQuery() {
        DBController dBController = new DBController();
        return JSON(dBController.usp_xxxxx());
}

关于c# - 如何将复杂类型转换为 actionresult,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20738562/

相关文章:

c# - "async Task"成员(member)问题

c# - 带有部分 View 的 ajax 选项卡式 Pane 中的 IpagedList 无法正确呈现

sql-server - 与 Sql Management Studio 相比,Entity Framework 性能不一致

c# - 在 foreach 循环中转换

c# - C#查询未返回任何内容

javascript - 根据来自服务器的初始标记填充 knockoutJS View 模型对象

c# - 如何在 ASP.NET MVC 3 站点中执行后台作业?

c# - 将 Entity Framework Core 实体转换为 SQL 字符串

c# - linq中的动态投影

c# - 网络请求错误?