首页 > 解决方案 > 调用 ajax 时,.Net Core 2.2 Visual Studio 崩溃

问题描述

我有一个 AJAX 功能

$.ajax({
    type: "POST",
    url: "Action",
    data: JSON.stringify(model),
    contentType: "application/json; charset=utf-8",
    dataType: "json",
    success: successFunc,
    error: errorFunc
});

然后我有一个控制器,其中包含我要调用的操作

    [HttpPost]
    public async Task<IActionResult> Action([FromBody] Model model)
    {
        var result = await service.DoSomething(model)
        var callbackUrl = "CallbackUrl";

        return Json(callbackUrl);
    }

AJAX调用成功函数

            function successFunc(callbackUrl) {
                window.location(callbackUrl);
            };

我的问题是,当调用 ajax post 时,应用程序崩溃并显示“程序 '[17188] dotnet.exe' 已以代码 -1 (0xffffffff) 退出”。

有趣的是,该服务的“DoSomething”方法实际上将内容添加到数据库中并返回了 callbackUrl - 所有这些都是正确的

在操作中使用“DoSomething”方法将断点放在服务行不起作用 - 应用程序在它到达断点之前崩溃 - 代码被执行。

知道我怎么能找出这有什么问题吗?

编辑:唯一崩溃的是视觉工作室,IIS 仍在运行

EDIT2:尝试使用全新的 .net 核心 Web 应用程序重新创建问题

步骤 1) 使用个人用户登录创建 .net Web 应用程序

步骤 2) 使用字符串属性“MyProperty”创建 ViewModel 只是为了查看传递参数是否正常

public class ViewModel
{
    public string MyProperty { get; set; }
}

步骤 3) 向您的控制器添加新操作

    public IActionResult SomeAction([FromBody] ViewModel model)
    {
        var callbackUrl = "callbackUrl";

        return Json(callbackUrl);
    }

第 4 步)将其添加到文件末尾的 index.cshtml

<script type="text/javascript" src="~/lib/jquery/dist/jquery.js"></script>

<script>
    $(document).ready(function () {
        var model = {
            MyProperty: "my random property"
        };

        $.ajax({
            type: "POST",
            url: "Home/SomeAction",
            data: JSON.stringify(model),
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            processData: false,
            success: successFunc,
            error: errorFunc
        });

        function successFunc(result) {
            alert("success " + result);
        };

        function errorFunc(result) {
            alert("error " + result);
        };
    });
</script>

它正在工作 - 不知道为什么 VS 与我上面的示例崩溃它应该遵循相同的原则

标签: c#.netajax.net-core

解决方案


推荐阅读