带有 method="POST" 的自定义表单未显示在任务模块 ms teams 中

custom form with method="POST" isn't getting displayed in task module ms teams

我无法在任务模块中显示自定义表单。这是一个只有很少输入元素和 method="POST" 属性的表单。当我删除 "method" 属性时,任务模块会正确显示自定义表单。 我只想 post 输入字段值到控制器。

PS:当我在浏览器中 运行 这些表单时一切正常。我还在团队中添加了有效域,并且任务模块在表单标记中没有 method="POST" 属性的情况下完美呈现。

这是我的带有表单方法的 .cshtml 页面。

这里是控制器class

 public class HomeController : Controller
{
    public SuspectRegistration registration;
    public HomeController()
    {
        registration = new SuspectRegistration();
    }
    // GET: /<controller>/
    public IActionResult Index()
    {
        return View();
    }

    public IActionResult CustomForm()
    {
        return View();
    }

    public IActionResult PRFPDetailsForm()
    {
        return View();
    }

// This is the method where I need to get values, it works in browser without any issues.
    [HttpPost]
    public IActionResult PRFPDetailsForm(SuspectRegistration formData)
    {
        HttpContext.Session.SetString("formdata", JsonConvert.SerializeObject(formData));

        return View("PRFPDetailsForm");
    }



    public IActionResult PRFPRegistrationConfirmation()
    {
        var value = HttpContext.Session.GetString("formdata");

        var suspectRegistration = JsonConvert.DeserializeObject<SuspectRegistration>(value);

        ViewBag.SuspectRegistration = suspectRegistration;

        return View();
    }
}

我错过了在这里回复。您的后端代码没有问题。在前端,您需要将前端输入值提交给 js 对象中的 "microsoftTeams.tasks.submitTask(youJSObject)",同样的事情您可以在 "OnTeamsTaskModulesSubmitAsync" 方法的 turnContext 中接收。