我最近将代码从4.7.1移到了4.11.10。在旧版本中,其余扩展功能完美无缺。但是在4.11.10中它不起作用,我得到500错误。甚至调试也没有达到目标。
其余方法http://localhost/Base/Landing/GetCountries/3
注意: - 我没有升级umbraco。我刚安装后将代码移到更高版本
以下是代码段
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));
}
}
答案 0 :(得分:0)
很可能你的代码抛出一个异常,这会转换为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();
}
}
...
希望这可以帮助您找到问题!它对我有用。