Umbraco Rest扩展在将代码从4.7.1移动到4.11.10后不工作

本文关键字:移动 工作 扩展 Rest 代码 Umbraco | 更新日期: 2023-09-27 18:29:28

我最近将代码从4.7.1移动到4.11.10。在旧版本中,rest扩展曾经完美地工作。但在4.11.10中,它不起作用,我得到了500个错误。甚至调试也没有成功。

其余方法http://localhost/Base/Landing/GetCountries/3 的URL

注:-我没有升级本影。安装后,我刚刚将代码移到了更高的版本

以下是的代码片段

namespace Test.Umbraco.Ajax
{
[RestExtensionAttribute("Landing")]
public class Landing : Core.AjaxBase
{
    [RestExtensionMethodAttribute]
    public static string GetCountries()
    {
        return Core.RazorRenderer.RenderScriptFile("LandingPage/GetCountries", 0, GetLandingParameters(false));
    }
}

Umbraco Rest扩展在将代码从4.7.1移动到4.11.10后不工作

很可能您的代码抛出了一个异常,并将其转换为一个500错误来屏蔽它。所以问题可能是任何事情。我也遇到了同样的问题,我做的最好的事情就是将所有代码封装在try/catch中,并将异常作为字符串返回。请记住,为了从异常中获得所有信息,您需要在调试模式下编译并将.pdb文件与.dll.一起复制

...
[RestExtensionMethodAttribute]
public static string GetCountries() {
 try {
  return Core.RazorRenderer.RenderScriptFile("LandingPage/GetCountries", 0, GetLandingParameters(false));
 } catch (Exception e) {
   return e.ToString();
 }
}
...

希望这能帮助你找到问题所在!它对我有效。